X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fpublic-api%2Fobject%2Fany.h;h=e3fac2a388b49e568644bc8e680d1fe20daee8af;hb=646f736e77b085c86e982c0d1d4b895c2a431330;hp=8e77c776d9e7af38f1fcd9916587e2aab7a34089;hpb=401672befc7a190403545c124224d6f660a792a7;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/public-api/object/any.h b/dali/public-api/object/any.h index 8e77c77..e3fac2a 100644 --- a/dali/public-api/object/any.h +++ b/dali/public-api/object/any.h @@ -2,7 +2,7 @@ #define __DALI_ANY_TYPE_H__ /* - * Copyright (c) 2015 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -41,7 +41,7 @@ namespace Dali * Any floatVariable( 4.5f ); * Any strVariable( std::string( "Hello world" ) ); * uintVariable = 1u; - * unsigned int variable = AnyCast< unsigned int >( uintVariable ); + * uint32_t variable = AnyCast< uint32_t >( uintVariable ); * if ( typeid( int ) == uintVariable.GetType() ) * \endcode * @SINCE_1_0.0 @@ -53,27 +53,27 @@ public: * @brief Default constructor. * @SINCE_1_0.0 */ - DALI_IMPORT_API Any(); + DALI_CORE_API Any(); /** * @brief Destructor. Free resources. * @SINCE_1_0.0 */ - DALI_IMPORT_API ~Any(); + DALI_CORE_API ~Any(); /** - * @brief Pass Assert message + * @brief Passes Assert message. * * @SINCE_1_0.0 - * @param assertMessage Assert message to report + * @param[in] assertMessage Assert message to report */ - DALI_IMPORT_API static void AssertAlways( const char* assertMessage ); + DALI_CORE_API static void AssertAlways( const char* assertMessage ); /** * @brief Constructs a Any type with the given value. * * @SINCE_1_0.0 - * @param[in] value The given value. + * @param[in] value The given value */ template Any( const Type& value ) @@ -84,7 +84,7 @@ public: /** * @brief Copy Constructor. * @SINCE_1_0.0 - * @param [in] any Any to be copied. + * @param[in] any Any to be copied */ Any( const Any& any ) { @@ -139,18 +139,18 @@ public: * @brief Assignment operator. * * @SINCE_1_0.0 - * @param [in] any Any to be assigned which contains a value of identical type to current contents. + * @param[in] any Any to be assigned which contains a value of identical type to current contents. * @return A reference to this * @exception DaliException If parameter any is of a different type. * */ - DALI_IMPORT_API Any& operator=( const Any& any ); + DALI_CORE_API Any& operator=( const Any& any ); /** - * @brief Get a value of type Type from container + * @brief Gets a value of type Type from container. * * @SINCE_1_0.0 - * @param type destination of type Type to write to + * @param[in] type destination of type Type to write to */ template void Get( Type& type ) const @@ -163,27 +163,24 @@ public: * * @SINCE_1_0.0 * @return The std::type_info of the stored value or the type info of the void - * type if there is no value stored. + * type if there is no value stored */ - DALI_IMPORT_API const std::type_info& GetType() const; + DALI_CORE_API const std::type_info& GetType() const; /** * @brief Retrieves the stored value in the Any type. * * @SINCE_1_0.0 - * @return The stored value. + * @return The stored value */ template const Type& Get() const { - if ( NULL == mContainer ) { AssertAlways( "Any::Get(). mContainer is NULL" ); } - - // Check if the value has the same value than the Any type. - if( mContainer->GetType() != typeid( Type ) ) + else if( mContainer->GetType() != typeid( Type ) ) // Check if the value has the same value than the Any type. { AssertAlways( "Any::Get(). Trying to retrieve a value of a different type than the template one." ); } @@ -191,10 +188,10 @@ public: } /** - * @brief Return pointer of Type to the value stored + * @brief Returns pointer of Type to the value stored. * * @SINCE_1_0.0 - * @return pointer to the value or NULL if no value is contained + * @return pointer to the value, or NULL if no value is contained */ template Type* GetPointer() @@ -212,10 +209,10 @@ public: } /** - * @brief Return pointer of Type to the value stored + * @brief Returns pointer of Type to the value stored. * * @SINCE_1_0.0 - * @return pointer to the value or NULL if no value is contained + * @return pointer to the value, or NULL if no value is contained */ template const Type* GetPointer() const @@ -233,10 +230,10 @@ public: } /** - * @brief Returns whether container holds a value + * @brief Returns whether container holds a value. * * @SINCE_1_0.0 - * @return true if the container is empty, else false. + * @return @c true if the container is empty, else @c false */ bool Empty() const { @@ -248,19 +245,19 @@ public: typedef void (*DeleteFunc)( const AnyContainerBase* base ); /** - * @brief Base container to hold type for match verification and instance cloning function + * @brief Base container to hold type for match verification and instance cloning function. * * @SINCE_1_0.0 */ struct AnyContainerBase { /** - * @brief Constructor of base container + * @brief Constructor of base container. * * @SINCE_1_0.0 - * @param type typeid of container - * @param cloneFunc Cloning function to replicate this container type - * @param deleteFunc Deleting function to destroy this container type + * @param[in] type typeid of container + * @param[in] cloneFunc Cloning function to replicate this container type + * @param[in] deleteFunc Deleting function to destroy this container type */ AnyContainerBase( const std::type_info& type, CloneFunc cloneFunc, DeleteFunc deleteFunc ) : mType( type ), @@ -269,10 +266,10 @@ public: {} /** - * @brief Get the typeid of this container + * @brief Gets the typeid of this container. * * @SINCE_1_0.0 - * @return type + * @return Type */ const std::type_info& GetType() const { @@ -286,10 +283,10 @@ public: /** - * @brief Templated Clone function from container base + * @brief Templated Clone function from container base. * * @SINCE_1_0.0 - * @param base reference to container + * @param[in] base The reference to container */ template struct AnyContainerImplCloner @@ -301,10 +298,10 @@ public: }; /** - * @brief Templated Delete function from container base + * @brief Templated Delete function from container base. * * @SINCE_1_0.0 - * @param base pointer to container + * @param[in] base The pointer to container */ template struct AnyContainerImplDelete @@ -316,7 +313,7 @@ public: }; /** - * @brief Templated class to hold value for type + * @brief Templated class to hold value for type. * * @SINCE_1_0.0 */ @@ -326,10 +323,10 @@ public: public: /** - * @brief Constructor to create container holding value of type Type + * @brief Constructor to create container holding value of type Type. * * @SINCE_1_0.0 - * @param value Value of Type + * @param[in] value Value of Type */ AnyContainerImpl( const Type& value ) : AnyContainerBase( typeid( Type ), @@ -339,10 +336,10 @@ public: {} /** - * @brief Constructor to create new container of type from and existing container (cloning) + * @brief Constructor to create new container of type from and existing container (cloning). * * @SINCE_1_0.0 - * @param base reference to base container to copy from + * @param[in] base The reference to base container to copy from */ AnyContainerImpl( const AnyContainerBase& base ) : AnyContainerBase( typeid( Type ), @@ -353,10 +350,10 @@ public: } /** - * @brief Get the container's stored value + * @brief Gets the container's stored value. * * @SINCE_1_0.0 - * @return value of type Type + * @return Value of type Type */ const Type& GetValue() const { @@ -364,10 +361,10 @@ public: } /** - * @brief Set the container's stored value + * @brief Sets the container's stored value. * * @SINCE_1_0.0 - * @param value of type Type + * @param[in] value Value of type Type */ void SetValue( const Type& value ) { @@ -375,10 +372,10 @@ public: } /** - * @brief Get a pointer to the value held + * @brief Gets a pointer to the value held. * * @SINCE_1_0.0 - * @return pointer to the value of type Type + * @return Pointer to the value of type Type */ Type* GetPointerToValue() { @@ -386,10 +383,10 @@ public: } /** - * @brief Get a pointer to the value held + * @brief Gets a pointer to the value held. * * @SINCE_1_0.0 - * @return pointer to the value of type Type + * @return Pointer to the value of type Type */ const Type* GetPointerToValue() const { @@ -409,10 +406,10 @@ public: */ /** - * @brief Extract a pointer to the held type of an Any object from a pointer to that Any object (NULL if empty ) + * @brief Extracts a pointer to the held type of an Any object from a pointer to that Any object (NULL if empty). * * @SINCE_1_0.0 - * @param any Pointer to an Any object + * @param[in] any Pointer to an Any object * * @return Pointer to the Type held */ @@ -423,10 +420,10 @@ inline Type* AnyCast( Any* any ) } /** - * @brief Extract a const pointer to the held type of an Any object from a pointer to that Any object (NULL if empty ) + * @brief Extracts a const pointer to the held type of an Any object from a pointer to that Any object (NULL if empty). * * @SINCE_1_0.0 - * @param any const Pointer to an Any object + * @param[in] any const Pointer to an Any object * * @return const Pointer to the Type held */ @@ -437,10 +434,10 @@ inline const Type* AnyCast( const Any* any ) } /** - * @brief Extract a held value of type Type from an Any object from a reference to that Any object + * @brief Extracts a held value of type Type from an Any object from a reference to that Any object. * * @SINCE_1_0.0 - * @param any reference to an Any object + * @param[in] any The reference to an Any object * * @return Type value of type Type */ @@ -451,10 +448,10 @@ inline Type AnyCast( Any& any ) } /** - * @brief Extract a held value of type Type from an Any object from a const reference to that Any object + * @brief Extracts a held value of type Type from an Any object from a const reference to that Any object. * * @SINCE_1_0.0 - * @param any reference to an Any object + * @param[in] any The reference to an Any object * * @return Type value of type Type */ @@ -465,10 +462,10 @@ inline Type AnyCast( const Any& any ) } /** - * @brief Extract a reference to the held value of type Type from an Any object from a reference to that Any object + * @brief Extracts a reference to the held value of type Type from an Any object from a reference to that Any object * * @SINCE_1_0.0 - * @param any reference to an Any object + * @param[in] any The reference to an Any object * * @return A reference to the Type value of type Type */ @@ -479,10 +476,10 @@ inline Type& AnyCastReference( Any& any ) } /** - * @brief Extract a const reference to the held value of type Type from an Any object from a const reference to that Any object + * @brief Extracts a const reference to the held value of type Type from an Any object from a const reference to that Any object. * * @SINCE_1_0.0 - * @param any reference to an Any object + * @param[in] any The reference to an Any object * * @return A const reference to the Type value of type Type */