Public Types | |
enum | BuildFlavour { WorkStation, Server } |
The build of the CLR. More... | |
Public Member Functions | |
CCLRHost (BuildFlavour build, DWORD flags=0, IHostControl *pHostControl=nullptr, IEventSinkCallback *pCallback=nullptr) | |
Construct a host for the specific build of the CLR and pass the supplied flags to it during construction. If specified, register the IHostControl interface with the host and, again, if specified, register the supplied IEventSinkCallback interface to receieve event callbacks. | |
CCLRHost (const JetByteTools::Core::_tstring &version, BuildFlavour build, DWORD flags=0, IHostControl *pHostControl=nullptr, IEventSinkCallback *pCallback=nullptr) | |
Construct a host for the version and build of the CLR and pass the supplied flags to it during construction. If specified, register the IHostControl interface with the host and, again, if specified, register the supplied IEventSinkCallback interface to receieve event callbacks. | |
CCLRHost (ICLRRuntimeHost *pHost, IHostControl *pHostControl=nullptr, IEventSinkCallback *pCallback=nullptr) | |
Construct a host for the supplied instance of ICLRRuntimeHost. If specified, register the IHostControl interface with the host and, again, if specified, register the supplied IEventSinkCallback interface to receieve event callbacks. AddRefs all interface that are passed in to it. | |
CCLRHost (const CCLRHost &rhs) | |
~CCLRHost () | |
CCLRHost & | operator= (const CCLRHost &rhs) |
void | SetAppDomainManagerType (const JetByteTools::Core::_tstring &assembly, const JetByteTools::Core::_tstring &type) |
Set the Application Domain Manager to be the supplied type within the supplied assembly. | |
CCLRPolicyManager & | GetPolicyManager () const |
Get the CLR's policy manager. | |
CCLRGCManager & | GetGCManager () const |
Get the CLR's GC manager. | |
void | Start () |
Start the CLR. | |
bool | StartIfPossible () |
Starts the CLR if it's not already started. | |
void | OnCLRDisabled () |
To be called if the CLR is reported as disabled. | |
void | Stop () |
Stop the CLR - well, we would if it supported shutting down... | |
void | DisableCallbacks (bool logWhenDisabled=false) |
Disables event sink callbacks. | |
void | UnloadAppDomain (DWORD dwAppDomainID) |
void | RegisterForEventCallback (EClrEvent event) |
Register to receieve callbacks when the supplied event is fired by the CLR. This call results in an exception if you didn't register an instance of IEventSinkCallback when you constructed the host. | |
void | UnRegisterForEventCallback (EClrEvent event) |
Stop receieving callbacks when the supplied event is fired by the CLR. This call results in an exception if you didn't register an instance of IEventSinkCallback when you constructed the host. |
enum BuildFlavour |
CCLRHost | ( | BuildFlavour | build, | |
DWORD | flags = 0 , |
|||
IHostControl * | pHostControl = nullptr , |
|||
IEventSinkCallback * | pCallback = nullptr | |||
) | [explicit] |
Construct a host for the specific build of the CLR and pass the supplied flags to it during construction. If specified, register the IHostControl interface with the host and, again, if specified, register the supplied IEventSinkCallback interface to receieve event callbacks.
CCLRHost | ( | const JetByteTools::Core::_tstring & | version, | |
BuildFlavour | build, | |||
DWORD | flags = 0 , |
|||
IHostControl * | pHostControl = nullptr , |
|||
IEventSinkCallback * | pCallback = nullptr | |||
) |
Construct a host for the version and build of the CLR and pass the supplied flags to it during construction. If specified, register the IHostControl interface with the host and, again, if specified, register the supplied IEventSinkCallback interface to receieve event callbacks.
CCLRHost | ( | ICLRRuntimeHost * | pHost, | |
IHostControl * | pHostControl = nullptr , |
|||
IEventSinkCallback * | pCallback = nullptr | |||
) | [explicit] |
Construct a host for the supplied instance of ICLRRuntimeHost. If specified, register the IHostControl interface with the host and, again, if specified, register the supplied IEventSinkCallback interface to receieve event callbacks. AddRefs all interface that are passed in to it.
~CCLRHost | ( | ) |
void SetAppDomainManagerType | ( | const JetByteTools::Core::_tstring & | assembly, | |
const JetByteTools::Core::_tstring & | type | |||
) |
Set the Application Domain Manager to be the supplied type within the supplied assembly.
CCLRPolicyManager & GetPolicyManager | ( | ) | const |
Get the CLR's policy manager.
CCLRGCManager & GetGCManager | ( | ) | const |
Get the CLR's GC manager.
void Start | ( | ) |
Start the CLR.
bool StartIfPossible | ( | ) |
Starts the CLR if it's not already started.
void OnCLRDisabled | ( | ) |
To be called if the CLR is reported as disabled.
void Stop | ( | ) |
Stop the CLR - well, we would if it supported shutting down...
void DisableCallbacks | ( | bool | logWhenDisabled = false |
) |
Disables event sink callbacks.
void UnloadAppDomain | ( | DWORD | dwAppDomainID | ) |
void RegisterForEventCallback | ( | EClrEvent | event | ) |
Register to receieve callbacks when the supplied event is fired by the CLR. This call results in an exception if you didn't register an instance of IEventSinkCallback when you constructed the host.
void UnRegisterForEventCallback | ( | EClrEvent | event | ) |
Stop receieving callbacks when the supplied event is fired by the CLR. This call results in an exception if you didn't register an instance of IEventSinkCallback when you constructed the host.