FbxLoadingStrategy Class 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

enum EState

Result state of loading plug-in.

Enumerator
eAllLoaded 

All plug-in are loaded.

eNoneLoaded 

No plug-in is loaded, i.e., there is not plug-in to load.

eAllFailed 

All plug-in are failed to load.

eSomeFailed 

Some plug-ins are loaded but some are failed.

Definition at line 36 of file fbxloadingstrategy.h.

37  {
38  eAllLoaded,
39  eNoneLoaded,
40  eAllFailed,
42  };
Some plug-ins are loaded but some are failed.
All plug-in are failed to load.
No plug-in is loaded, i.e., there is not plug-in to load.
All plug-in are loaded.

Member Function Documentation

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
If the plugin loading is successful return true, otherwise return false.
void Unload ( )

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

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

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
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

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: