![]() |
VR-Forces Developer's Guide
|
The DtNetworkInterfaceManager manages all network interfaces utilized by the sim engine. Often there is only one, but it is possible for there to be multiple. Each network interface is an instance of a subclass of DtNetworkManagerInterface. As state data is created or removed, the DtNetworkInterfaceManager will notify each of its network interfaces, so that they may create object network interfaces to output required state data to the network.
Static Public Member Functions | |
| static void | setNetworkInterfaceManagerCreatorFcn (DtNetworkInterfaceManagerCreatorFcn fcn) |
| static DtNetworkInterfaceManager * | createNetworkInterfaceManager (makVrf::DtStateDataManager *) |
Public Attributes | |
| boost::signals2::signal< void(DtNetworkManagerInterface *)> | signal_interfaceAdded |
| boost::signals2::signal< void(DtNetworkManagerInterface *)> | signal_interfaceRemoved |
Protected Member Functions | |
| virtual void | slot_stateDataAdded (makVrf::DtStateData *) |
| virtual void | slot_stateDataAboutToBeRemoved (const makVrf::DtStateData *) |
| virtual void | initialize (DtNetworkManagerInterface *) |
Protected Attributes | |
| std::vector < DtNetworkManagerInterface * > | myNetworkManagers |
| makVrf::DtStateDataManager * | myStateDataManager |
| bool | myRunFullyThreaded |
| bool | myEnabled |
| const Coordinate_System * | myCoordinateSystem |
| bool | myOwnsCoordinateSystem |
| DtVrfParameterDb * | myParameterDb |
| int | myVrfSessionId |
| int | myVrfMessageVersionSupported |
| DtSimulationAddress | mySimulationAddress |
| int | myNumberOfCallbackThreads |
| double | mySimTime |
| double | myDt |
| DtString | myFrameRateMode |
| double | myFrameDeltaTime |
| makVrfEvents::DtEventManager * | myEventManager |
| DtCommunicationManager * | myCommunicationManager |
| boost::signals2::scoped_connection | myStateDataAddedConnection |
| boost::signals2::scoped_connection | myStateDataRemovedConnection |
| DtU32 | myScenarioCapabilities |
Static Protected Attributes | |
| static DtNetworkInterfaceManagerCreatorFcn | theNetworkInterfaceManagerCreatorFcn |
| DtNetworkInterfaceManager::DtNetworkInterfaceManager | ( | makVrf::DtStateDataManager * | ) |
constructor
|
virtual |
|
static |
Factory method for creating this class. If no factory method defined the default DtNetworkInterfaceManager is created.
|
static |
Factory method for creating this class. If no factory method defined the default DtNetworkInterfaceManager is created.
|
inline |
Tells all network interfaces the frame is beginning. Returns the new sim time for this frame.
|
inline |
|
inline |
|
virtual |
Returns true if there are no registered connections.
|
virtual |
Tells all network interfaces the frame wants to be advanced. Called before the state data manager is advanced. Return false to not continue advancing frame. This can be useful if the network is still processing and the application doesn't want to block.
|
virtual |
Returns true if the network manager is waiting to add objects.
|
virtual |
Tells all network interfaces the frame wants to be advanced. Called after state data manager is advanced. Supply networkFrameTime pointer to get performance stats of time spent in network frame.
|
virtual |
Fire/detonate (and other) pdus/interactions can be tied with an event id. This routine will return the event id in a protocol dependent way based on the communication interface. Pass in the optional entity id of the entity causing the event.
|
virtual |
Since the network interfaces will be walked in order to see if one wants to put it on the network to prevent other interfaces from also publishing on the network, insert this at the beginning to give it priority. This class will take ownership of the manager. If the manager type already exists, existing type is deleted.
|
virtual |
If supported, number of network threads to use.
|
virtual |
Returns the protocol of the first driver.
|
virtual |
This class will take ownership of the manager. If the manager type already exists, existing type is deleted.
|
virtual |
Removes and deletes the manager.
Returns true if this class already has the network manager.
|
virtual |
Returns true if the entity type is publishable by this connection.
|
virtual |
Capabilities of this back-end.
|
virtual |
|
virtual |
Returns the network manager by type.
|
virtual |
Sees which interface is handing this data and print any information that it wants to the given stream.
Returns true if this UUID has a network representation.
|
virtual |
In case network interfaces care, the origin and radius of interest of this server.
|
virtual |
Returns true if this manager supports ownership transfer. If any network interface does assumes true.
|
virtual |
Connector dependent. Reserve the number of objects to be created.
|
virtual |
Requests each network interface to print their non locally simulated object counts to the screen.
|
virtual |
If there are objects on other simulation systems, and the network protocol supports the request, request to force an update of any non simulated VR-Forces object.
|
virtual |
|
inline |
|
virtual |
Whether or not the communication manager is enabled for receiving information.
|
inline |
|
virtual |
Given the global object designator, return the state data associated with it.
|
virtual |
Whether or not to run fully threaded.
|
inline |
|
virtual |
Sets coordinate system into network connections.
|
virtual |
Sets the VRF parameter database (if needed)
|
virtual |
If the network interface supports it, the maximum name of a marking text.
|
virtual |
If used, the session id this VRF session is in.
|
virtual |
If used the message version this VRF session uses.
|
inline |
|
virtual |
Called when starting scenario load. True is passed in to reuse identifiers if network dependent.
|
virtual |
Called when ending scenario load. True is passed in to reuse identifiers if network dependent.
|
virtual |
Sets the mode for the exercise clock.
|
virtual |
Called when the scenario is rewound.
|
virtual |
Puts the simulation into run mode by letting the network connections know.
|
virtual |
Puts the simulation into pause mode by letting the network connections know.
|
virtual |
Start day/date time of the exercise.
|
virtual |
Sets the current simulation time.
|
virtual |
Sets the current time multiplier.
The site and app id of this back-end.
|
inline |
|
inline |
|
virtual |
Determines the simulation time for this frame.
|
virtual |
Passes the event to the network interfaces for possible handling. selfReflected will return true if the act of adding the event also adds it to the event manager as a process of sending on the network.
|
virtual |
Sends the event on network only. Does not add to event manager even if self reflected.
|
virtual |
Sets the event manager to use in case of remote events coming over the network to post to.
|
virtual |
Called when the simulation is ending and wants to reset.
|
virtual |
If any of the network connections return false, this scenario is not valid.
|
virtual |
Called when all objects are being deleted, will indicate that all remotes will eventually need to be rediscovered.
|
virtual |
Return true if this connection uses the simulation database to publish on (as a legion connection does). If so then this connection will also need to let the system know it needs to provide an unpublished database.
|
virtual |
Whether or not any of the network interfaces will publish on the legion network.
|
virtual |
Returns true if any of the connections are self reflecting.
|
virtual |
Sets all connections (if supported) to self reflecting. This will only apply to current handlers, not ones that are added after this is called.
|
virtual |
Passes down to the network interfaces to recreate any state data for remote objects.
|
virtual |
|
virtual |
|
virtual |
Reserves the entity id so it cannot be used by newly created objects that have a null entity identifier.
|
protectedvirtual |
See what network interface wants to handle this add. Once does others are not given a chance.
|
protectedvirtual |
Call each network interface for the removal.
|
protectedvirtual |
Initializes interface with current settings.
| boost::signals2::signal<void (DtNetworkManagerInterface*)> DtNetworkInterfaceManager::signal_interfaceAdded |
Signal sent when an interface is added.
| boost::signals2::signal<void (DtNetworkManagerInterface*)> DtNetworkInterfaceManager::signal_interfaceRemoved |
Signal sent when an interface is removed.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
protected |
|
protected |
|
protected |
|
protected |