X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fintegration-api%2Fresource-types.h;h=db03510c5f991c7cc3a358b563cc49a6a4968c87;hb=19ab6276b29f8a7d1c52c6cc0a38e494f4ac9a05;hp=68df75cc619e613f6ed2bc9723cbbda8e2abc377;hpb=55602e7fde8b3c1a1be39b841a4607afc4d35968;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/integration-api/resource-types.h b/dali/integration-api/resource-types.h index 68df75c..db03510 100644 --- a/dali/integration-api/resource-types.h +++ b/dali/integration-api/resource-types.h @@ -45,11 +45,7 @@ namespace Integration */ enum ResourceTypeId { - ResourceBitmap, - ResourceNativeImage, - ResourceTargetImage, - ResourceShader, - ResourceMesh + ResourceBitmap }; /** @@ -139,181 +135,6 @@ private: BitmapResourceType& operator=(const BitmapResourceType& rhs); }; -/** - * NativeImageResourceType describes a native image resource, which can be injected - * through ResourceManager::AddNativeImage() or requested through ResourceLoader::LoadResource(). - * If the adaptor does not support NativeImages, it can fall back to Bitmap type. - */ -struct NativeImageResourceType : public ResourceType -{ - /** - * Constructor. - */ - NativeImageResourceType() - : ResourceType(ResourceNativeImage) {} - - /** - * Constructor. - * @param[in] dimensions Width and Height to allocate for image. - */ - NativeImageResourceType( ImageDimensions dimensions ) - : ResourceType(ResourceNativeImage), - imageDimensions(dimensions) {} - - /** - * Destructor. - */ - virtual ~NativeImageResourceType() {} - - /** - * @copydoc ResourceType::Clone - */ - virtual ResourceType* Clone() const - { - return new NativeImageResourceType(imageDimensions); - } - - /** - * Attributes are copied from the request (if supplied). - */ - ImageDimensions imageDimensions; - -private: - - // Undefined copy constructor. - NativeImageResourceType(const NativeImageResourceType& typePath); - - // Undefined assignment operator. - NativeImageResourceType& operator=(const NativeImageResourceType& rhs); -}; - -/** - * RenderTargetResourceType describes a bitmap resource, which can injected - * through ResourceManager::AddTargetImage() - */ -struct RenderTargetResourceType : public ResourceType -{ - /** - * Constructor. - */ - RenderTargetResourceType() - : ResourceType(ResourceTargetImage) {} - - /** - * Constructor. - * @param[in] dims Width and Height to allocate for image. - */ - RenderTargetResourceType( ImageDimensions dims ) - : ResourceType(ResourceTargetImage), - imageDimensions(dims) {} - - /** - * Destructor. - */ - virtual ~RenderTargetResourceType() {} - - /** - * @copydoc ResourceType::Clone - */ - virtual ResourceType* Clone() const - { - return new RenderTargetResourceType(imageDimensions); - } - - /** - * Image size is copied from the request. - */ - ImageDimensions imageDimensions; - -private: - - // Undefined copy constructor. - RenderTargetResourceType(const RenderTargetResourceType& typePath); - - // Undefined assignment operator. - RenderTargetResourceType& operator=(const RenderTargetResourceType& rhs); -}; - -/** - * ShaderResourceType describes a shader program resource, which can be requested - * from PlatformAbstraction::LoadResource() - */ -struct ShaderResourceType : public ResourceType -{ - /** - * Constructor. - */ - ShaderResourceType(size_t shaderHash, const std::string& vertexSource, const std::string& fragmentSource) - : ResourceType(ResourceShader), - hash(shaderHash), - vertexShader(vertexSource), - fragmentShader(fragmentSource) - { - } - - /** - * Destructor. - */ - virtual ~ShaderResourceType() - { - } - - /** - * @copydoc ResourceType::Clone - */ - virtual ResourceType* Clone() const - { - return new ShaderResourceType(hash, vertexShader, fragmentShader); - } - -public: // Attributes - size_t hash; ///< Hash of the vertex/fragment sources - const std::string vertexShader; ///< source code for vertex program - const std::string fragmentShader; ///< source code for fragment program - -private: - - // Undefined copy constructor. - ShaderResourceType(const ShaderResourceType& typePath); - - // Undefined assignment operator. - ShaderResourceType& operator=(const ShaderResourceType& rhs); -}; - -/** - * MeshResourceType describes a mesh program resource, which can be created - * using ResourceManager::AllocateMesh. - */ -struct MeshResourceType : public ResourceType -{ - /** - * Constructor. - */ - MeshResourceType() - : ResourceType(ResourceMesh) {} - - /** - * Destructor. - */ - virtual ~MeshResourceType() {} - - /** - * @copydoc ResourceType::Clone - */ - virtual ResourceType* Clone() const - { - return new MeshResourceType(); - } - -private: - - // Undefined copy constructor. - MeshResourceType(const MeshResourceType& typePath); - - // Undefined assignment operator. - MeshResourceType& operator=(const MeshResourceType& rhs); -}; - } // namespace Integration } // namespace Dali