-#ifndef __DALI_TYPE_REGISTRY_H__
-#define __DALI_TYPE_REGISTRY_H__
+#ifndef DALI_TYPE_REGISTRY_H
+#define DALI_TYPE_REGISTRY_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
*
*/
-
// EXTERNAL INCLUDES
#include <typeinfo>
#include <cstdint> // uint32_t
{
class TypeRegistry;
}
+struct DefaultPropertyMetadata;
/**
* @brief The TypeRegistry allows registration of type instance creation functions.
TypeInfo::CreateFunction f, bool callCreateOnInit );
/**
+ * @brief Constructor registers the type creation function.
+ *
+ * @SINCE_1_4.0
+ * @param[in] registerType the type info for the type to be registered
+ * @param[in] baseType the base type info of registerType
+ * @param[in] f registerType instance creation function
+ * @param[in] defaultProperties the default property meta-data
+ */
+ TypeRegistration( const std::type_info& registerType, const std::type_info& baseType,
+ TypeInfo::CreateFunction f, const DefaultPropertyMetadata& defaultProperties );
+
+ /**
* @brief Constructor registers the type creation function for a named class or type.
*
* This allows types to be created dynamically from script. The name must be