fbximplementation.h

Go to the documentation of this file.
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_SHADING_IMPLEMENTATION_H_
00014 #define _FBXSDK_SCENE_SHADING_IMPLEMENTATION_H_
00015 
00016 #include <fbxsdk/fbxsdk_def.h>
00017 
00018 #include <fbxsdk/core/fbxobject.h>
00019 
00020 #include <fbxsdk/fbxsdk_nsbegin.h>
00021 
00022 class FbxBindingOperator;
00023 class FbxBindingTable;
00024 
00050 class FBXSDK_DLL FbxImplementation : public FbxObject
00051 {
00052     FBXSDK_OBJECT_DECLARE(FbxImplementation, FbxObject);
00053 
00054 public:
00059     FbxString                                   RenderName;
00061 
00066 
00070     FbxPropertyT<FbxString>         Language;
00071 
00073     FbxPropertyT<FbxString>         LanguageVersion;
00074 
00078     FbxPropertyT<FbxString>         RenderAPI;
00079 
00081     FbxPropertyT<FbxString>         RenderAPIVersion;
00083 
00084 
00089 
00091     FbxPropertyT<FbxString>         RootBindingName;
00092 
00094     FbxProperty GetConstants() const;
00095 
00101     FbxBindingTable* AddNewTable( char const* pTargetName, char const* pTargetType );
00102 
00106     FbxBindingTable const* GetRootTable() const;
00107     
00111     FbxBindingTable* GetRootTable();
00112     
00116     int GetTableCount() const;
00117 
00122     FbxBindingTable const* GetTable( int pIndex ) const;
00127     FbxBindingTable* GetTable( int pIndex );
00128 
00133     FbxBindingTable const* GetTableByTargetName( char const* pName ) const;
00134     
00139     FbxBindingTable* GetTableByTargetName( char const* pName );
00140 
00145     FbxBindingTable const* GetTableByTargetType( char const* pTargetName ) const;
00146     
00151     FbxBindingTable* GetTableByTargetType( char const* pTargetName );
00152 
00153     
00159     FbxBindingOperator* AddNewBindingOperator( char const* pTargetName, char const* pFunctionName );
00160 
00164     int GetBindingOperatorCount() const;
00165 
00170     FbxBindingOperator const* GetOperatorByTargetName( char const* pTargetName ) const;
00172 
00173 
00178 
00179     // property names
00180 
00184     static const char* sLanguage;
00185 
00189     static const char* sLanguageVersion;
00190 
00194     static const char* sRenderAPI;
00195 
00199     static const char* sRenderAPIVersion;
00200 
00204     static const char* sRootBindingName;
00205 
00209     static const char* sConstants;
00210 
00212     static const char* sDefaultType;
00213 
00215     static const char* sDefaultLanguage;
00216 
00218     static const char* sDefaultLanguageVersion;
00219 
00221     static const char* sDefaultRenderAPI;
00222 
00224     static const char* sDefaultRenderAPIVersion;
00225 
00227     static const char* sDefaultRootBindingName;
00229 
00230 /*****************************************************************************************************************************
00231 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
00232 *****************************************************************************************************************************/
00233 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00234 protected:
00235     virtual void ConstructProperties(bool pForceSet);
00236 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
00237 };
00238 
00239 #include <fbxsdk/fbxsdk_nsend.h>
00240 
00241 #endif /* _FBXSDK_SCENE_SHADING_IMPLEMENTATION_H_ */