Leviathan  0.8.0.0
Leviathan game engine
Leviathan::ScriptArgumentsProviderBridge Class Reference

Forms a connection between a ScriptModule and a ScriptArgumentsProvider which either can disconnect. More...

#include <ScriptArgumentsProvider.h>

Public Member Functions

 ScriptArgumentsProviderBridge ()
 
DLLEXPORT void SetModule (ScriptModule *module)
 
DLLEXPORT ScriptModuleGetModule ()
 
DLLEXPORT void LeaveModule ()
 
DLLEXPORT void SetProvider (ScriptArgumentsProvider *provider)
 
DLLEXPORT ScriptArgumentsProviderGetProvider ()
 
DLLEXPORT void LeaveProvider ()
 

Protected Attributes

ScriptModuleOwningModule
 
ScriptArgumentsProviderOwningProvider
 

Detailed Description

Forms a connection between a ScriptModule and a ScriptArgumentsProvider which either can disconnect.

This is used to allow either of the objects to be destructed before the other. Another option would have been using Notifiers, but this might be a cleaner solution

Definition at line 37 of file ScriptArgumentsProvider.h.

Constructor & Destructor Documentation

◆ ScriptArgumentsProviderBridge()

Leviathan::ScriptArgumentsProviderBridge::ScriptArgumentsProviderBridge ( )
inline

Definition at line 40 of file ScriptArgumentsProvider.h.

Member Function Documentation

◆ GetModule()

DLLEXPORT ScriptModule* Leviathan::ScriptArgumentsProviderBridge::GetModule ( )
inline

Definition at line 47 of file ScriptArgumentsProvider.h.

47  {
48 
49  return OwningModule;
50  }

◆ GetProvider()

DLLEXPORT ScriptArgumentsProvider* Leviathan::ScriptArgumentsProviderBridge::GetProvider ( )
inline

Definition at line 62 of file ScriptArgumentsProvider.h.

62  {
63 
64  return OwningProvider;
65  }

◆ LeaveModule()

DLLEXPORT void Leviathan::ScriptArgumentsProviderBridge::LeaveModule ( )
inline

Definition at line 52 of file ScriptArgumentsProvider.h.

52  {
53 
54  OwningModule = NULL;
55  }

◆ LeaveProvider()

DLLEXPORT void Leviathan::ScriptArgumentsProviderBridge::LeaveProvider ( )
inline

Definition at line 67 of file ScriptArgumentsProvider.h.

67  {
68 
69  OwningProvider = NULL;
70  }

◆ SetModule()

DLLEXPORT void Leviathan::ScriptArgumentsProviderBridge::SetModule ( ScriptModule module)
inline

Definition at line 42 of file ScriptArgumentsProvider.h.

42  {
43 
44  OwningModule = module;
45  }

◆ SetProvider()

DLLEXPORT void Leviathan::ScriptArgumentsProviderBridge::SetProvider ( ScriptArgumentsProvider provider)
inline

Definition at line 57 of file ScriptArgumentsProvider.h.

57  {
58 
59  OwningProvider = provider;
60  }

Member Data Documentation

◆ OwningModule

ScriptModule* Leviathan::ScriptArgumentsProviderBridge::OwningModule
protected

Definition at line 75 of file ScriptArgumentsProvider.h.

◆ OwningProvider

ScriptArgumentsProvider* Leviathan::ScriptArgumentsProviderBridge::OwningProvider
protected

Definition at line 76 of file ScriptArgumentsProvider.h.


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