VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtIntervisibilityElement.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 #include <vrvCore/vrvCore.h>
12 #include <vrvCore/DtUniqueID.h>
14 #include <vrvCore/DtElementEntry.h>
16 #include <vrvUtil/DtUnicode.h>
18 #include <boost/unordered_map.hpp>
19 
20 #include <matrix/vlVector.h>
21 
22 namespace makVrv
23 {
24  class DtDe;
25  class DtIntervisibilityVisualizerSet;
26  class DtIntervisibilityStateListener;
27  class DtStateVisualizer;
28 
33  {
34  public:
35  typedef boost::unordered_map<int, DtIntervisibilityVisualizerSet*>
37 
40  DtIntervisibilityStateListener&, const DtUnicode& elementDefName,
41  DtElementEntry::ElementType type, bool distribute = true);
42 
44  virtual ~DtIntervisibilityElement();
45 
47  virtual void setVisible( bool visible );
48 
50  bool visible() const;
51 
54  DtElementID elementID();
55 
58  const DtUnicode& definition() const;
59 
60  inline const ModelSetMap& modelSetMap() const
61  {
62  return myModelSetMap;
63  }
64 
66  {
67  return myListener;
68  }
69 
70  virtual void setSelected(bool);
71  inline bool selected() const
72  {
73  return mySelected;
74  }
75 
78  virtual int indexOfVertex(DtUniqueID id,
79  DtStateVisualizer*& visualizer) const;
80 
83  virtual void setVertexSelected(int iIndex, bool);
84 
86  virtual void visualizeModelSets();
87 
90  virtual void setPickable(bool);
91  bool pickable() const;
92 
96  virtual bool circleSelected() const;
97 
100  virtual bool hasCircle() const;
101 
102  protected:
103 
105  virtual void setModelSetEnabled( int modelSet, bool enabled );
106 
108  virtual DtIntervisibilityVisualizerSet* createVisualizerSet(
109  int modelSet) const;
110 
111  protected:
112 
120 
125  bool myVisible;
126  };
127 }
A unicode string.
Definition: DtUnicode.h:33
The DtIntervisibilityElement class implements the common behavior of shape elements that are added to...
Definition: DtIntervisibilityElement.h:32
DtElementEntry::ElementType myObjectType
Definition: DtIntervisibilityElement.h:119
bool myPickable
Definition: DtIntervisibilityElement.h:123
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
bool selected() const
Definition: DtIntervisibilityElement.h:71
const ModelSetMap & modelSetMap() const
Definition: DtIntervisibilityElement.h:60
The DtIntervisibilityStateListener is a class that will allow intervisibility objects to use start/en...
Definition: DtIntervisibilityStateListener.h:24
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:34
Contains makVrv::DtSharedModelSetSettings class.
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
bool myVisible
Definition: DtIntervisibilityElement.h:125
boost::unordered_map< int, DtIntervisibilityVisualizerSet * > ModelSetMap
Definition: DtIntervisibilityElement.h:36
bool myDistribute
Definition: DtIntervisibilityElement.h:122
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
ElementType
Definition: DtElementEntry.h:26
bool myCircleMode
Definition: DtIntervisibilityElement.h:121
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
DtSignalConnectionManager myConnections
Definition: DtIntervisibilityElement.h:117
Contains makVrv:DtBaseConnection class.
ModelSetMap myModelSetMap
Definition: DtIntervisibilityElement.h:118
The DtStateVisualizer is an abstract class.
Definition: DtStateVisualizer.h:32
Base class to provide boost signal/slot management.
DtBaseConnection & myBaseConnection
Definition: DtIntervisibilityElement.h:114
bool mySelected
Definition: DtIntervisibilityElement.h:124
Contains makVrv::DtUniqueID type.
This class is a set of intervisibility visualizers, all of the visualizers in this set must support t...
Definition: DtIntervisibilityVisualizerSet.h:22
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
DtIntervisibilityStateListener & listener()
Definition: DtIntervisibilityElement.h:65
Contains makVrv::DtElementEntry class.
DtDe & myDe
Definition: DtIntervisibilityElement.h:113
DtUnicode myElementDefinitionName
Definition: DtIntervisibilityElement.h:116
DtIntervisibilityStateListener & myListener
Definition: DtIntervisibilityElement.h:115
Contains DLL export macros.

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)