00001 /**************************************************************************************** 00002 00003 Copyright (C) 2013 Autodesk, Inc. 00004 All rights reserved. 00005 00006 Use of this software is subject to the terms of the Autodesk license agreement 00007 provided at the time of installation or download, or which otherwise accompanies 00008 this software in either electronic or hard copy form. 00009 00010 ****************************************************************************************/ 00011 00013 #ifndef _FBXSDK_SCENE_GEOMETRY_VERTEX_CACHE_DEFORMER_H_ 00014 #define _FBXSDK_SCENE_GEOMETRY_VERTEX_CACHE_DEFORMER_H_ 00015 00016 #include <fbxsdk/fbxsdk_def.h> 00017 00018 #include <fbxsdk/scene/geometry/fbxdeformer.h> 00019 #include <fbxsdk/scene/geometry/fbxcache.h> 00020 00021 #include <fbxsdk/fbxsdk_nsbegin.h> 00022 00027 class FBXSDK_DLL FbxVertexCacheDeformer : public FbxDeformer 00028 { 00029 FBXSDK_OBJECT_DECLARE(FbxVertexCacheDeformer, FbxDeformer); 00030 00031 public: 00032 00036 void SetCache( FbxCache* pCache ); 00037 00041 FbxCache* GetCache() const; 00042 00046 void SetCacheChannel( const char* pName ); 00047 00051 FbxString GetCacheChannel() const; 00052 00056 void SetActive( bool pValue ); 00057 00061 bool IsActive() const; 00062 00066 virtual EDeformerType GetDeformerType() const { return FbxDeformer::eVertexCache; } 00067 00068 protected: 00073 FbxPropertyT<FbxBool> Active; 00074 FbxPropertyT<FbxString> Channel; 00075 FbxPropertyT<FbxString> CacheSet; 00077 00078 /***************************************************************************************************************************** 00079 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! ** 00080 *****************************************************************************************************************************/ 00081 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00082 public: 00083 void SetCacheSetName(const char* pCacheSetName); 00084 FbxString GetCacheSetName() const; 00085 00086 virtual FbxObject& Copy(const FbxObject& pObject); 00087 00088 static const char* sChannelPropertyName; 00089 static const char* sActivePropertyName; 00090 static const char* sCacheSetPropertyName; 00091 00092 protected: 00093 virtual void ConstructProperties(bool pForceSet); 00094 00095 virtual FbxStringList GetTypeFlags() const; 00096 00097 private: 00098 void ClearCacheConnections(); 00099 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/ 00100 }; 00101 00102 #include <fbxsdk/fbxsdk_nsend.h> 00103 00104 #endif /* _FBXSDK_SCENE_GEOMETRY_VERTEX_CACHE_DEFORMER_H_ */