VR-Forces 4.8 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 /******************************************************************************
6 ** $RCSfile: $ $Revision: $ $State: $
7 ******************************************************************************/
8 
12 
13 #pragma once
14 #include <vrvCore/vrvCore.h>
15 #include <vrvCore/DtUniqueID.h>
17 #include <vrvCore/DtElementEntry.h>
19 #include <vrvUtil/DtUnicode.h>
21 #include <boost/unordered_map.hpp>
22 
23 #include <matrix/vlVector.h>
24 
25 namespace makVrv
26 {
27  class DtDe;
28  class DtIntervisibilityVisualizerSet;
29  class DtIntervisibilityStateListener;
30  class DtStateVisualizer;
31 
36  {
37  public:
38  typedef boost::unordered_map<int, DtIntervisibilityVisualizerSet*>
40 
43  DtIntervisibilityStateListener&, const DtUnicode& elementDefName,
44  DtElementEntry::ElementType type, bool distribute = true);
45 
47  virtual ~DtIntervisibilityElement();
48 
50  virtual void setVisible( bool visible );
51 
53  bool visible() const;
54 
57  DtElementID elementID();
58 
61  const DtUnicode& definition() const;
62 
63  inline const ModelSetMap& modelSetMap() const
64  {
65  return myModelSetMap;
66  }
67 
69  {
70  return myListener;
71  }
72 
73  virtual void setSelected(bool);
74  inline bool selected() const
75  {
76  return mySelected;
77  }
78 
81  virtual int indexOfVertex(DtUniqueID id,
82  DtStateVisualizer*& visualizer) const;
83 
86  virtual void setVertexSelected(int iIndex, bool);
87 
89  virtual void visualizeModelSets();
90 
93  virtual void setPickable(bool);
94  bool pickable() const;
95 
99  virtual bool circleSelected() const;
100 
103  virtual bool hasCircle() const;
104 
105  protected:
106 
108  virtual void setModelSetEnabled( int modelSet, bool enabled );
109 
111  virtual DtIntervisibilityVisualizerSet* createVisualizerSet(
112  int modelSet) const;
113 
114  protected:
115 
123 
128  bool myVisible;
129  };
130 }
A unicode string.
Definition: DtUnicode.h:33
The DtIntervisibilityElement class implements the common behavior of shape elements that are added to...
Definition: DtIntervisibilityElement.h:35
DtElementEntry::ElementType myObjectType
Definition: DtIntervisibilityElement.h:122
bool myPickable
Definition: DtIntervisibilityElement.h:126
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:26
bool selected() const
Definition: DtIntervisibilityElement.h:74
const ModelSetMap & modelSetMap() const
Definition: DtIntervisibilityElement.h:63
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:37
Contains makVrv::DtSharedModelSetSettings class.
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
bool myVisible
Definition: DtIntervisibilityElement.h:128
boost::unordered_map< int, DtIntervisibilityVisualizerSet * > ModelSetMap
Definition: DtIntervisibilityElement.h:39
bool myDistribute
Definition: DtIntervisibilityElement.h:125
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
ElementType
Definition: DtElementEntry.h:26
bool myCircleMode
Definition: DtIntervisibilityElement.h:124
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
DtSignalConnectionManager myConnections
Definition: DtIntervisibilityElement.h:120
Contains makVrv:DtBaseConnection class.
ModelSetMap myModelSetMap
Definition: DtIntervisibilityElement.h:121
The DtStateVisualizer is an abstract class.
Definition: DtStateVisualizer.h:30
Base class to provide boost signal/slot management.
DtBaseConnection & myBaseConnection
Definition: DtIntervisibilityElement.h:117
bool mySelected
Definition: DtIntervisibilityElement.h:127
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:25
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
DtIntervisibilityStateListener & listener()
Definition: DtIntervisibilityElement.h:68
Contains makVrv::DtElementEntry class.
DtDe & myDe
Definition: DtIntervisibilityElement.h:116
DtUnicode myElementDefinitionName
Definition: DtIntervisibilityElement.h:119
DtIntervisibilityStateListener & myListener
Definition: DtIntervisibilityElement.h:118
Contains DLL export macros.

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)