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_CORE_PERIPHERAL_H_ 00014 #define _FBXSDK_CORE_PERIPHERAL_H_ 00015 00016 #include <fbxsdk/fbxsdk_def.h> 00017 00018 #include <fbxsdk/fbxsdk_nsbegin.h> 00019 00020 class FbxObject; 00021 00031 class FBXSDK_DLL FbxPeripheral 00032 { 00033 public: 00038 00040 FbxPeripheral(); 00041 00043 virtual ~FbxPeripheral(); 00045 00048 virtual void Reset() = 0; 00049 00056 virtual bool UnloadContentOf(FbxObject* pObject) = 0; 00057 00064 virtual bool LoadContentOf(FbxObject* pObject) = 0; 00065 00071 virtual bool CanUnloadContentOf(FbxObject* pObject) = 0; 00072 00078 virtual bool CanLoadContentOf(FbxObject* pObject) = 0; 00079 00083 virtual void InitializeConnectionsOf(FbxObject* pObject) = 0; 00084 00088 virtual void UninitializeConnectionsOf(FbxObject* pObject) = 0; 00089 }; 00090 00091 // predefined offload peripherals 00092 extern FBXSDK_DLL FbxPeripheral* NULL_PERIPHERAL; 00093 extern FBXSDK_DLL FbxPeripheral* TMPFILE_PERIPHERAL; 00094 #include <fbxsdk/fbxsdk_nsend.h> 00095 00096 #endif /* _FBXSDK_CORE_PERIPHERAL_H_ */