VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
aggregateCopyObject.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include <vrfGuiCore/vrfGuiCore.h>
18 
20 
21 namespace makVrv
22 {
23 
24 };
25 
26 namespace makVrf
27 {
29  {
30  public:
32  virtual ~DtVrfAggregateCopyPasteHandler() override;
33 
35  {
36  myObjectsPasting.push_back(o);
37  }
38 
39  void centerPasteObjects(const DtGeodeticCoord&, const DtGeodeticCoord&);
40 
41  protected:
43  virtual DtCopyObject* createCopyObject(int) const override;
44  };
45 
47  {
48 
49  public:
51  virtual ~DtAggregateCopyObject() override;
52 
53  protected:
55  virtual void write(std::ostringstream& str, DtSimObjectReference) override;
56 
58  virtual void readAdditionalData(std::istringstream& str) override;
59 
61  virtual void copied(DtCopyObject*, const std::string&);
62 
64  virtual void copyOperationPending(DtCopyObject*, const std::string&);
65 
66  protected:
69  virtual void createObject(const DtVector&) override;
70 
72  virtual void pasteCompleted();
73 
75  virtual bool pasteComplete() const override;
76 
78  virtual std::string pastePendingMessage() const override;
79 
81  virtual void readComplete(std::istringstream& str) override;
82 
84  virtual void pasted(DtCopyObject*);
85 
87  virtual void pasteOperationPending(DtCopyObject*, const std::string&);
88 
91  virtual void pasteCancelled(DtCopyObject*);
92 
94  virtual void addStateData(std::map<std::string, std::string>&, const DtRwVariableBindings&, const DtString& var);
95 
96  virtual void paste(const DtVector& geocLocation, int flags) override;
97 
98  public:
101  virtual bool copyOperationsPending() const override;
102 
103  protected:
105  virtual void copyChildren(const makVrv::DtElementIDHierarchy::ElementIDs&);
106 
108  virtual void cancel() override;
109 
110  virtual std::string copyPendingMessage() const override;
111 
112  virtual bool cancelComplete() const override;
113 
114  virtual void copy(makVrv::DtUniqueID id) override;
115 
117  virtual void copyComplete() override;
118 
120  virtual DtEntityCreationData entityCreationData(const DtVector&) override;
121 
123  virtual void processPasteStep() override;
124 
125  protected:
133 
134  typedef std::set<DtUUID> AwaitingMap;
135 
137  {
138  std::shared_ptr<DtGuiLocalObject> state;
140  };
141 
142  std::vector<SubordinateState> myPastedSubordinates;
144  };
145 
149  {
150  public:
151  virtual DtCopyObject* create(makVrv::DtDe&) override;
152  };
153 }
UUID is a unique ID wrapper class.
Definition: uuid.h:59
makVrv::DtSignalConnectionManager myCopyConnections
Definition: aggregateCopyObject.h:127
std::vector< DtElementID > ElementIDs
Definition: DtElementIDHierarchy.h:114
std::shared_ptr< DtGuiLocalObject > state
Definition: aggregateCopyObject.h:138
Definition: aggregateCopyObject.h:46
Creator used to create copy classes. Subclass to implement create() method to return object used for ...
Definition: copyObject.h:360
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
Definition: entityCreationData.h:27
ReaderWriter object that maintains a list of reader-writer variable bindings. It keeps a list of name...
Definition: rwVariableBindings.h:27
Definition: aggregateCopyObject.h:136
DtUUID uuid
Definition: aggregateCopyObject.h:139
bool myAwaitingSubordinateCreation
Definition: aggregateCopyObject.h:131
Definition: entityCopyObject.h:36
std::vector< SubordinateState > myPastedSubordinates
Definition: aggregateCopyObject.h:142
Contains makVrv::DtElementIDHierarchy class. This is an arbitrary hierarchy class that will allow hie...
int myWaitingForChildren
Definition: aggregateCopyObject.h:129
AwaitingMap myAwaitingOrganization
Definition: aggregateCopyObject.h:143
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Definition: copyObject.h:124
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
makVrv::DtSignalConnectionManager myPasteConnections
Definition: aggregateCopyObject.h:128
Base class to provide boost signal/slot management.
std::set< DtUUID > AwaitingMap
Definition: aggregateCopyObject.h:134
Creator used to create copy classes. Subclass to implement create() method to return object used for ...
Definition: aggregateCopyObject.h:148
DtVector myAggregatePasteLocation
Definition: aggregateCopyObject.h:132
bool myPasteComplete
Definition: aggregateCopyObject.h:130
Definition: aggregateCopyObject.h:28
void addObjectPasting(DtCopyObject *o)
Definition: aggregateCopyObject.h:34
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
DtVrfAggregateCopyPasteHandler myCopyPasteHandler
Definition: aggregateCopyObject.h:126
The Master DtVrfCopyPasteManagerHandler.
Definition: vrfCopyPasteHandler.h:38

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)