![]() |
MAK RTIspy API Documentation for HLA 4
|
You will probably not want to completely override the way particular RTI services are implemented by DtRtiAmbassadorImplementor.
It is more likely that you will want to allow the default logic to be executed and just alter the way some of the specific tasks are handled. For example, to change the way the RTI communicates, you can subclass DtConnectionMgr. But the basic logic, for example, the fact that a call to updateAttributeValues() causes us to check various exception conditions, and then create and send one or more messages, remains the same.
However, if you want to override RTI service implementations wholesale, so that you can have full control over how the services are implemented, you can. DtRtiAmbassadorImplementor's interface mirrors that of the real RTI::RTIambassador class, except that all of its functions are virtual, and therefore can be overridden in a derived class. If you want to re-implement RTI Ambassador functions, the process is essentially the same as for overriding managers, discussed in Creating Custom RTI Managers.
Create a subclass of DtRtiAmbassadorImplementor and override the functions you choose:
Use SetPluginCreators() to tell the RTI to use an instance of your subclass instead of the default implementor:
Remember that when you override implementations of RTI services, you must keep the RTI's internal state correct and consistent, otherwise other services may fail to work properly.
[<< Creating Custom RTI Managers] [Home] [Top of Page] [Communicating with Remote LRCs and the rtiexec >>]