1/****************************************************************************************
2
3 Copyright (C) 2015 Autodesk, Inc.
4 All rights reserved.
5
6 Use of this software is subject to the terms of the Autodesk license agreement
7 provided at the time of installation or download, or which otherwise accompanies
8 this software in either electronic or hard copy form.
9
10****************************************************************************************/
11
12//! \file fbxproceduraltexture.h
13#ifndef _FBXSDK_SCENE_SHADING_TEXTURE_PROCEDURAL_H_
14#define _FBXSDK_SCENE_SHADING_TEXTURE_PROCEDURAL_H_
15
16#include <fbxsdk/fbxsdk_def.h>
17
18#include <fbxsdk/scene/shading/fbxtexture.h>
19
20#include <fbxsdk/fbxsdk_nsbegin.h>
21
22/** Contains the information to generate a texture procedurally. Data information for the texture
23 * generation is contained in a blob property.
24 * \see FbxTexture
25 * \nosubgrouping
26 */
27class FBXSDK_DLL FbxProceduralTexture : public FbxTexture
28{
29 FBXSDK_OBJECT_DECLARE(FbxProceduralTexture, FbxTexture);
30
31 public:
32 /**
33 * \name Procedural Texture Properties
34 */
35 //@{
36
37 /** This property handles the raw data for generating procedural texture.
38 */
39 FbxPropertyT<FbxBlob> BlobProp;
40
41 /** Resets the default procedural texture values.
42 */
43 void Reset();
44
45 //@}
46
47 /**
48 * \name Property Access Methods
49 */
50 //@{
51
52 /** Sets the blob.
53 * \param pBlob Blob containing information for the procedural texture
54 */
55 void SetBlob(FbxBlob& pBlob);
56
57 /** Get the blob.
58 * \return Blob containing information for the procedural texture
59 */
60 FbxBlob GetBlob() const;
61
62 //@}
63
64/*****************************************************************************************************************************
65** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
66*****************************************************************************************************************************/
67#ifndef DOXYGEN_SHOULD_SKIP_THIS
68 virtual FbxObject& Copy(const FbxObject& pObject);
69
70 bool operator==(FbxProceduralTexture const& pTexture) const;
71
72protected:
73 virtual void Construct(const FbxObject* pFrom);
74 virtual void ConstructProperties(bool pForceSet);
75
76 void Init();
77#endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
78};
79
80#include <fbxsdk/fbxsdk_nsend.h>
81
82#endif /* _FBXSDK_SCENE_SHADING_TEXTURE_PROCEDURAL_H_ */
83