VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
createObjectServiceInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 
11 #include <boost/signals2.hpp>
12 
14 class DtIfAggregateAs;
16 class DtLocalObject;
18 class DtObjectType;
19 
23 typedef enum
24 {
29 
36 {
37 private:
39 
43 
44 public:
46 
48  virtual DtCreateObjectHandle createAndInitVrfObject(const DtIfCreateVrfObject* creationInfo) = 0;
49 
51  virtual DtCreateObjectHandle createAndInitVrfObject(DtIfAggregateAs* aggInfo) = 0;
52 
56  virtual DtCreateObjectHandle createLocalObject(const DtVrfLocalObjectCreateInformation& creationInfo) = 0;
57 
59 
60  virtual void removeAndDelete(const DtUUID& objectUuid, bool removeFromOrbat = false, bool removeSubordinates = true) = 0;
61  virtual void removeAndDelete(DtLocalObject* localObject, bool removeFromOrbat = false, bool removeSubordinates = true) = 0;
63 
65  virtual void removeAndDeleteAll(bool andDeleteFromOrbat = false) = 0;
66 
68  virtual void queueSetSuperiorToForce(const DtUUID& subordinate, int force, int designator = 0) = 0;
70  virtual void queueSetSuperior(const DtUUID& subordinate, const DtUUID& superior, int designator = 0) = 0;
71 
72  virtual DtRwStringAttributeList* customizedMarkingsFor(const DtObjectType& ot) = 0;
73 
75  virtual bool hasOutstandingSubordinateChanges() const = 0;
76 
78  virtual DtString nextNameWithPrefix(int maxLength, const DtString& prefix) = 0;
79 
82  boost::signals2::signal<void ()> signal_subordinateChangesComplete;
83 };
UUID is a unique ID wrapper class.
Definition: rwUUID.h:229
Handle returned from Create Object Service calls.
Definition: createObjectHandle.h:12
Service interface for creating and removing simulation objects as well as adjusting orgainization hie...
Definition: createObjectServiceInterface.h:35
Definition: createObjectServiceInterface.h:26
Definition: createObjectServiceInterface.h:27
The DtLocalObjectCreateInformation class is a subset of the information used in the DtIfCreateVrfObje...
Definition: vrfLocalObjectCreateInformation.h:26
Definition: objectType.h:27
boost::signals2::signal< void()> signal_subordinateChangesComplete
Signal sent when transitioning from having queued operations to having no queued operations.
Definition: createObjectServiceInterface.h:82
Definition: createObjectServiceInterface.h:25
This is the FIXED length portion of a DtIfAggregateAs message content when placed on the network...
Definition: ifAggregateAs.h:39
DtAggregateCreationMode
Defines how the initial DtAggregateState should be set upon creation of an aggregate entity...
Definition: createObjectServiceInterface.h:23
#define DT_DLL_vrfcore
This file is used to determine how to build.
Definition: vrfcoreDefines.h:25
class DtRwStringAttributeList:
Definition: rwStringAttributeList.h:29
class DtIfCreateVrfObject:
Definition: ifCreateVrfObject.h:77
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)