VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfEntityManipulationHandler.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrfGuiCore/vrfGuiCore.h>
15 #include <vrvCore/DtUniqueID.h>
17 #include <matrix/vlVector.h>
18 
20 class DtIfEmbarkObject;
22 class DtScriptedTaskSet;
23 
24 namespace makVrf
25 {
26  class DtEntityFacadeCollection;
27 
30  {
31 
32  public:
33 
35  virtual ~DtVrfEntityManipulationHandler() override;
36 
37  virtual void setForce(int f) override;
38 
39  virtual void setLabel(const std::string&) override;
40  virtual std::string label() const override;
41 
42  virtual void setExtendedLabels(const std::map<int, DtString>&) override;
43 
44  virtual HandlerType type() const override { return Entity; };
45 
46  virtual bool clampAtClosestPolygonOnPlacement() const override;
47  virtual bool canSetActivationTime() const override;
48  virtual bool needsEmbarkOnCheck() const override;
49  virtual void setVisualMarking(const std::string& linkageName, const std::string& value);
50 
51  virtual std::map<std::string, std::string> markingDecalMap() const;
52 
53  boost::signals2::signal<void (std::string, std::string)> signal_markingDecalSet;
54 
58  boost::signals2::signal<void ()> signal_startOfMarkingDecalSet;
59  boost::signals2::signal<void ()> signal_endOfMarkingDecalSet;
60 
61  protected:
62  virtual void slot_markingDecalSet(DtEntityFacadeCollection*, std::string linkage, std::string marking);
63 
64  virtual DtEntityFacadeCollection* createFacadeInterface();
65 
66  virtual bool canChangeAltitudeOf(const DtEntityType&) const;
67 
68  virtual void initializeAltitudeAboveTerrainForEdit(
69  double curAlt, const DtVector& curPos, DtVrfObjectFacadeInterface* iFace) override;
70 
73  virtual void updateOffsetsBasedOnMousePosition() override;
74 
75  virtual void collectionVisualized(DtVrfObjectFacadeInterface*);
76 
79  virtual bool createVrfObject(DtVrfObjectFacadeInterface*) override;
80  virtual void initializeInterfaceForEdit(DtVrfObjectFacadeInterface* iFace, makVrv::DtUniqueID sceneObjectId,
81  DtSimObjectReference editState, const DtVector& principalLocation,
82  const DtTaitBryan& principalOrientation) override;
83 
84  virtual bool modifyVrfObject(DtVrfObjectFacadeInterface*) override;
85 
87  virtual DtVrfObjectFacadeInterface* createLocalRepresentation(
89 
90  virtual DtVrfObjectFacadeInterface* createLocalRepresentation(DtSimObjectReference editStateView,
91  makVrv::DtUniqueID sceneObjectId, DtSimObjectReference principalStateView) override;
92 
93  virtual void initializeEventProcessor() override;
94  virtual void postCreateInitialize(DtVrfObjectFacadeInterface*) override;
95 
96  virtual void randomlyChooseDIGuyAppearance(const DtRwNLengthStringVector&, DtEntityFacadeCollection*);
97 
98  virtual void randomlyChooseDIGuyHandItem(const DtRwNLengthStringVector&, DtEntityFacadeCollection*);
99 
100  virtual void randomlyChooseDIGuyHead(const DtRwNLengthStringVector&, DtEntityFacadeCollection*);
101  virtual void handlerDisabled() override;
102 
103  virtual DtIfEmbarkObject* createEmbarkObjectMessage(const DtVector& geocentricEmbarkeePosition) const;
104 
106  virtual double defaultAltitudeOffsetFor(DtVrfObjectFacadeInterface*) const override;
107 
109  virtual DtEntityType entityTypeBasedOnKey() const;
110 
111  virtual DtIfExecuteSimCommand* createMarkingTextSet(DtEntityFacadeCollection*) const;
112  virtual DtScriptedTaskSet* createMarkingTextScriptedSet(DtEntityFacadeCollection* ent) const;
113 
114  protected:
116  };
117 
120 }
boost::signals2::signal< void()> signal_endOfMarkingDecalSet
Definition: vrfEntityManipulationHandler.h:59
DtRwDIGuyCharacterInfo myDIGuyCharacterInformation
Definition: vrfEntityManipulationHandler.h:115
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
Set version of scripted task that is used in scripted set scripts.
Definition: scriptedTaskSet.h:19
Creation/edit of entity objects.
Definition: vrfEntityManipulationHandler.h:29
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
static DtSimObjectReferenceTemplate nullReference()
virtual HandlerType type() const override
The type of handler. Used to see if two handler are equivalent.
Definition: vrfEntityManipulationHandler.h:44
Contains the DtRwDIGuyCharacterInfo class declaration.
This interface content holds a DtSimCommand subclass for delivery to a simulation engine...
Definition: ifExecuteSimCommand.h:27
Instances of this class are the interface message content used to embark an object on the specified p...
Definition: ifEmbarkObject.h:22
Definition: vrfObjectFacadeInterface.h:53
Definition: vrfObjectManipulationHandlerBaseClass.h:88
HandlerType
The type of handler this is.
Definition: vrfObjectManipulationHandlerBaseClass.h:52
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Will create entity facades for each realized model set and manage them all.
Definition: entityFacadeCollection.h:67
DtVrfObjectManipulationHandlerCreator< DtVrfEntityManipulationHandler > DtVrfEntityManipulationHandlerCreator
Definition: vrfEntityManipulationHandler.h:119
The DtRwDIGuyCharactertInfo class is a readable/writable class that can store itself and read itself ...
Definition: rwDIGuyCharacterInfo.h:32
Contains makVrv::DtUniqueID type.
boost::signals2::signal< void(std::string, std::string)> signal_markingDecalSet
Definition: vrfEntityManipulationHandler.h:53
Definition: vrfObjectManipulationHandlerBaseClass.h:56
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
Definition: vrfObjectManipulationHandlerBaseClass.h:840
boost::signals2::signal< void()> signal_startOfMarkingDecalSet
These signals are needed because of variants/subvariants and not knowing in which order they are bein...
Definition: vrfEntityManipulationHandler.h:58

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)