FBX C++ API Reference
FbxLoadingStrategy Class Referenceabstract

#include <fbxloadingstrategy.h>

Class Description

Abstract class used to implemented some plug-in loading strategy.

A loading strategy dictate how some plug-ins will be loaded for instance. We could have a simple strategy that loads only a single dll on PC. We could also implement a strategy that load multiple dlls from a directory.

Definition at line 31 of file fbxloadingstrategy.h.

+ Inheritance diagram for FbxLoadingStrategy:

Public Types

enum  EState { eAllLoaded, eNoneLoaded, eAllFailed, eSomeFailed }
 Result state of loading plug-in. More...
 
- Public Types inherited from FbxPluginContainer
typedef FbxIntrusiveList< FbxPluginPluginList
 Definition of a plug-in list. More...
 

Public Member Functions

Public interface


EState Load (FbxPluginData &pData)
 Execute the operation of loading the plug-in(s). More...
 
void Unload ()
 Execute the operation of unloading the plug-in(s). More...
 
- Public Member Functions inherited from FbxPluginContainer
void Register (FbxPlugin &pPlugin)
 The registration function that must be called when the module containing the plug-in is loaded. More...
 
void Unregister (FbxPlugin &pPlugin)
 The unregistration function that must be called when the module containing the plug-in is unloaded. More...
 
const PluginListGetPlugins () const
 Const accessor to the list of plug-ins owned by the container. More...
 
PluginListGetPlugins ()
 Accessor to the list of plug-ins owned by the container. More...
 
- Public Member Functions inherited from FbxEmitter
void AddListener (FbxEventHandler &pHandler)
 Add the specified event handler to current emitter list. More...
 
void RemoveListener (FbxEventHandler &pHandler)
 Remove the specified event handler from current emitter list. More...
 
template<typename EventType >
void Emit (const EventType &pEvent) const
 Emit an event with the specified the event type. More...
 

Protected Member Functions

User implementation


virtual bool SpecificLoad (FbxPluginData &pData)=0
 Called by the Load method, it contains the specific user implementation strategy to load the desired plug-in(s). More...
 
virtual void SpecificUnload (FbxPluginData &pData)=0
 Called by the Unload method, it contains the specific user implementation strategy to unload the desired plug-in(s). More...
 

Protected Attributes

EState mPluginsLoadedState
 Whether the plugin is loaded or not. More...
 

Member Enumeration Documentation

◆ EState

enum EState

Result state of loading plug-in.

Enumerator
eAllLoaded 

Plug-ins are loaded.

eNoneLoaded 

No plug-ins are loaded.

eAllFailed 

Plug-ins failed to load.

eSomeFailed 

Not all found plug-ins are loaded.

Definition at line 36 of file fbxloadingstrategy.h.

37  {
38  eAllLoaded,
39  eNoneLoaded,
40  eAllFailed,
42  };
Not all found plug-ins are loaded.
Plug-ins failed to load.
No plug-ins are loaded.

Member Function Documentation

◆ Load()

EState Load ( FbxPluginData pData)

Execute the operation of loading the plug-in(s).

The way it is executed is determined by the specific implementations.

Parameters
pDataPlug in data that can be access inside the plug-ins.
Returns
The state of the loading action.

◆ Unload()

void Unload ( )

Execute the operation of unloading the plug-in(s).

The way it is executed is determined by the specific implementations.

◆ SpecificLoad()

virtual bool SpecificLoad ( FbxPluginData pData)
protectedpure virtual

Called by the Load method, it contains the specific user implementation strategy to load the desired plug-in(s).

Parameters
pDataPlug in data that can be access inside the plug-ins.
Returns
If the plugin loading is successful return true, otherwise return false

◆ SpecificUnload()

virtual void SpecificUnload ( FbxPluginData pData)
protectedpure virtual

Called by the Unload method, it contains the specific user implementation strategy to unload the desired plug-in(s).

Member Data Documentation

◆ mPluginsLoadedState

EState mPluginsLoadedState
protected

Whether the plugin is loaded or not.

Definition at line 76 of file fbxloadingstrategy.h.


The documentation for this class was generated from the following file: