fbxscopedloadingfilename.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. /****************************************************************************************
  2. Copyright (C) 2015 Autodesk, Inc.
  3. All rights reserved.
  4. Use of this software is subject to the terms of the Autodesk license agreement
  5. provided at the time of installation or download, or which otherwise accompanies
  6. this software in either electronic or hard copy form.
  7. ****************************************************************************************/
  8. //! \file fbxscopedloadingfilename.h
  9. #ifndef _FBXSDK_CORE_SCOPED_LOADING_FILENAME_H_
  10. #define _FBXSDK_CORE_SCOPED_LOADING_FILENAME_H_
  11. #include <fbxsdk/fbxsdk_def.h>
  12. #ifndef FBXSDK_ENV_WINSTORE
  13. #include <fbxsdk/core/fbxloadingstrategy.h>
  14. #include <fbxsdk/core/fbxmodule.h>
  15. #include <fbxsdk/fbxsdk_nsbegin.h>
  16. /**
  17. * A plug-in loading strategy that loads a single DLL by specifying the file name in the constructor, and unloads the DLL in its destructor.
  18. */
  19. class FBXSDK_DLL FbxScopedLoadingFileName : public FbxLoadingStrategy
  20. {
  21. public:
  22. /**
  23. *\name Public interface
  24. */
  25. //@{
  26. /** Constructor.
  27. * Load plug-in.
  28. * \param pPath The file path.
  29. */
  30. explicit FbxScopedLoadingFileName(const char* pPath);
  31. /** Destructor.
  32. * Unload plug-in.
  33. */
  34. virtual ~FbxScopedLoadingFileName();
  35. //@}
  36. /*****************************************************************************************************************************
  37. ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
  38. *****************************************************************************************************************************/
  39. #ifndef DOXYGEN_SHOULD_SKIP_THIS
  40. private:
  41. virtual bool SpecificLoad(FbxPluginData& pData);
  42. virtual void SpecificUnload(FbxPluginData& pData);
  43. FbxModule mInstance;
  44. FbxString mPath;
  45. #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
  46. };
  47. #include <fbxsdk/fbxsdk_nsend.h>
  48. #endif /* !FBXSDK_ENV_WINSTORE */
  49. #endif /* _FBXSDK_CORE_SCOPED_LOADING_FILENAME_H_ */