fbxplugincontainer.h

Go to the documentation of this file.
00001 /****************************************************************************************
00002  
00003    Copyright (C) 2012 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_PLUGIN_CONTAINER_H_
00014 #define _FBXSDK_CORE_PLUGIN_CONTAINER_H_
00015 
00016 #include <fbxsdk/fbxsdk_def.h>
00017 
00018 #include <fbxsdk/core/fbxplugin.h>
00019 #include <fbxsdk/core/fbxemitter.h>
00020 
00021 #include <fbxsdk/fbxsdk_nsbegin.h>
00022 
00032 class FBXSDK_DLL FbxPluginContainer : public FbxEmitter
00033 {
00034 public:
00038     void Register(FbxPlugin& pPlugin);
00039 
00043     void Unregister(FbxPlugin& pPlugin);
00044 
00046     typedef FbxIntrusiveList<FbxPlugin> PluginList;
00047 
00051     const PluginList& GetPlugins() const;
00052 
00056     PluginList& GetPlugins();
00057 
00059 //
00060 //  WARNING!
00061 //
00062 //    Anything beyond these lines may not be documented accurately and is 
00063 //     subject to change without notice.
00064 //
00066 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00067 protected:
00068     virtual ~FbxPluginContainer();
00069     PluginList mPlugins;
00070 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00071 };
00072 
00073 #include <fbxsdk/fbxsdk_nsend.h>
00074 
00075 #endif /* _FBXSDK_CORE_PLUGIN_CONTAINER_H_ */