VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
makVrf::DtRangeRingVisualizer Class Referenceabstract

A visualizer for displaying range rings. More...

Inheritance diagram for makVrf::DtRangeRingVisualizer:
Inheritance graph
[legend]

Classes

struct  RingStruct
 
struct  RingStructDrawingData
 

Public Member Functions

 DtRangeRingVisualizer (makVrv::DtBaseConnection &connection, makVrv::DtStateListener &listener, int modelSet)
 CTOR. More...
 
virtual ~DtRangeRingVisualizer ()
 DTOR. More...
 
virtual void connect ()
 
virtual void disconnect ()
 
virtual void initialize_settings ()
 
virtual void setModelDefinitionForAgents ()
 Sets model definition for all the agents that this visualizer might be using. More...
 
virtual bool setVisible (bool visible, int context)
 Returns true if this context wants to show or hide the item. More...
 
- Public Member Functions inherited from makVrv::DtStateVisualizer
 DtStateVisualizer (DtBaseConnection &connection, DtStateListener &listener, int modelSet)
 CTOR. More...
 
virtual ~DtStateVisualizer ()
 DTOR. More...
 
virtual void destroyModelAgents ()=0
 Destroys all currently created definitions. More...
 
virtual const TypeInfotypeInfo () const =0
 Get the type info. More...
 
virtual void setParent (DtStateVisualizer *)
 Override to set the parent of this visualizer. More...
 
void setModelDefinition (const std::string &definition)
 Sets the model definition and creates agent(s) based on that definition. More...
 
const std::string & modelDefinition () const
 Gets the current model definition. More...
 
virtual void implementVisibility (bool visible)
 Wrap some of the show/hide functionality so that it can be overloaded (ex. More...
 
virtual void initialize ()
 Initialize the visualizer. More...
 
virtual bool isVisible () const
 Returns true if visible. More...
 
virtual bool selected () const
 
void setName (const std::string &)
 Internal name of state visualizer. More...
 
const std::string & name () const
 
virtual void setPickable (bool)
 Sets pickable state. More...
 
virtual bool pickable () const
 
virtual void setUniqueID (DtUniqueID id)
 
DtUniqueID uniqueID () const
 
int visualizerType () const
 
void setShowHideContext (const std::vector< int > &s)
 Set show/hide context without changing visibility of item. More...
 
virtual void setVisualizerDefinition (const DtVisualizerDefinition &)
 Set any other additional visualizer information from the visual record. More...
 
DtStateListenerlistener ()
 
DtBaseConnectionsimulation ()
 Get the connection for this visualizer. More...
 
void setDistribute (bool b)
 Whether or not to distribute over the network. More...
 
bool distribute () const
 

Protected Types

enum  ShowFlags { ShowNone = 0, ShowAll = 0x00000001, ShowPhysicalFootprintOnly = 0x00000002 }
 
typedef std::map< std::string,
RingStruct
RangeRings
 
typedef std::map< double,
std::set< std::string > > 
RangeRingRanges
 
typedef std::map< int,
makVrv::DtUnicode
LabelText
 

Protected Member Functions

virtual void createModelAgents ()
 Override to create model agents that will be used to display data from the listener. More...
 
virtual void tryToDraw ()
 
virtual void updateRangeRingsCount (ShowFlags flags=ShowAll)
 
virtual void setRangeRingsScale (float)
 Changes the scale of the font and width of the ring + axis lines. More...
 
virtual void updateRangeRingInformation (RingStruct &)
 Fills the ring - currently not enabled in dialog, but should work. More...
 
virtual void updateRangeRingsInformation ()
 
virtual void setRangeRingsGeometry ()
 
virtual void setRangeRingsColors ()
 
virtual void slot_entityRangeRingsEnabled (const DtUUID &, int setting)
 
virtual void setSelected (bool)
 Check for show range rings if selected flag. More...
 
virtual void updateScaleOfRings ()=0
 Overrides that need to be implemented to complete this class. More...
 
virtual void createRing (const DtRangeItem &, int extensionIndex)=0
 
virtual void updateRingOptions (RingStruct &)=0
 
virtual void destroyOuterRing (RingStruct &)=0
 Destroys data with the given ring. More...
 
virtual void setRangeRingGeometry (RingStruct &)=0
 Sets the geometry of the ring. More...
 
virtual void setRangeRingColors (RingStruct &)=0
 Sets colors for ring. More...
 
- Protected Member Functions inherited from makVrv::DtStateVisualizer
virtual void slot_mouseDown (DtMouseState &mouseState, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)
 Called when the mouse is clicked in this visualizer. More...
 
virtual void slot_mouseUp (DtMouseState &mouseState, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)
 
virtual void slot_mouseDblClick (DtMouseState &mouseState, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)
 
virtual bool hide (int context)
 Will call destroyModelAgents(), if, when the context is added, it is the first context in the list. More...
 
virtual bool show (int context)
 Will call createModelAgents(), if, when context is removed from myShowHideContexts, the list size is zero. More...
 
virtual bool supportsShowHideContext (int) const
 Default returns true. More...
 
template<typename T , typename C >
void connectAndUpdate (boost::signal< void(T)> &sig, void(C::*fp)(T), T val)
 Connect a signal and update the entity. More...
 

Protected Attributes

RangeRings myRangeRings
 
DtEntityStateListenerExtensionsmyExtensions
 
float myScale
 
bool myEntityRangeRingsEnabled
 
RangeRingRanges myRangeRingRanges
 
LabelText myLabelText
 
bool mySettingsInitialized
 
- Protected Attributes inherited from makVrv::DtStateVisualizer
DtBaseConnectionmySimulation
 
DtStateListenermyListener
 
bool myDistributeFlag
 
DtUniqueID myUniqueID
 
std::string myName
 
std::string myModelDefinition
 
DtSignalConnectionManager myConnections
 
int myModelSet
 
int myVisualizerType
 
std::vector< intmyShowHideContexts
 
bool mySelected
 
bool myPickable
 
bool myVisible
 
DtStateVisualizermyParent
 
DtSceneObjectAgent * mySceneObjectAgent
 

Additional Inherited Members

- Public Types inherited from makVrv::DtStateVisualizer
enum  Type {
  AllVisualizerTypes = 0, EntityVisualizerType = 1, EnvironmentalVisualizerType, InteractionVisualizerType,
  AggregateVisualizerType, IntervisibilityVisualizerType, TacticalSmokeVisualizerType, UserType = 10000
}
 Visualizer class types that are supportable via visualizers. More...
 
- Public Attributes inherited from makVrv::DtStateVisualizer
boost::signal< void(DtStateVisualizer
*, DtStateVisualizer
*, DtStateVisualizer *)> 
signal_reparented
 Signaled when the parent of this item changes, called before destroying any model agents. More...
 
boost::signal< void(DtMouseState
&, const DtUniqueID &, const
std::string &, const
std::string &, const
std::string
&, DtStateVisualizer *)> 
signal_mouseDown
 Emitted when the entity's indicator is clicked. More...
 
boost::signal< void(DtMouseState
&, const DtUniqueID &, const
std::string &, const
std::string &, const
std::string
&, DtStateVisualizer *)> 
signal_mouseUp
 
boost::signal< void(DtMouseState
&, const DtUniqueID &, const
std::string &, const
std::string &, const
std::string
&, DtStateVisualizer *)> 
signal_mouseDblClick
 

Detailed Description

A visualizer for displaying range rings.

Member Typedef Documentation

typedef std::map<std::string, RingStruct> makVrf::DtRangeRingVisualizer::RangeRings
protected
typedef std::map<double, std::set<std::string> > makVrf::DtRangeRingVisualizer::RangeRingRanges
protected

Member Enumeration Documentation

Enumerator
ShowNone 
ShowAll 
ShowPhysicalFootprintOnly 

Constructor & Destructor Documentation

makVrf::DtRangeRingVisualizer::DtRangeRingVisualizer ( makVrv::DtBaseConnection connection,
makVrv::DtStateListener listener,
int  modelSet 
)

CTOR.

virtual makVrf::DtRangeRingVisualizer::~DtRangeRingVisualizer ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrf::DtRangeRingVisualizer::connect ( )
virtual
virtual void makVrf::DtRangeRingVisualizer::disconnect ( )
virtual
virtual void makVrf::DtRangeRingVisualizer::initialize_settings ( )
virtual
virtual void makVrf::DtRangeRingVisualizer::setModelDefinitionForAgents ( )
virtual

Sets model definition for all the agents that this visualizer might be using.

If model agents are not created, should create them. Should not call this directly, but rather call setModelDefinition

Implements makVrv::DtStateVisualizer.

virtual bool makVrf::DtRangeRingVisualizer::setVisible ( bool  visible,
int  context 
)
virtual

Returns true if this context wants to show or hide the item.

If it does, put onto (or removes) list of contexts that are responsible for keeping this item hidden. If there are no items left and the item wants to be show, createModelAgents() is called, else if being hidden, destroyModelAgents() is called. Returns true if visibility has changed

Reimplemented from makVrv::DtStateVisualizer.

virtual void makVrf::DtRangeRingVisualizer::createModelAgents ( )
protectedvirtual

Override to create model agents that will be used to display data from the listener.

Implements makVrv::DtStateVisualizer.

virtual void makVrf::DtRangeRingVisualizer::tryToDraw ( )
protectedvirtual
virtual void makVrf::DtRangeRingVisualizer::updateRangeRingsCount ( ShowFlags  flags = ShowAll)
protectedvirtual
virtual void makVrf::DtRangeRingVisualizer::setRangeRingsScale ( float  )
protectedvirtual

Changes the scale of the font and width of the ring + axis lines.

virtual void makVrf::DtRangeRingVisualizer::updateRangeRingInformation ( RingStruct )
protectedvirtual

Fills the ring - currently not enabled in dialog, but should work.

Reimplemented in makVrf::Dt2DRangeRingVisualizer.

virtual void makVrf::DtRangeRingVisualizer::updateRangeRingsInformation ( )
protectedvirtual
virtual void makVrf::DtRangeRingVisualizer::setRangeRingsGeometry ( )
protectedvirtual
virtual void makVrf::DtRangeRingVisualizer::setRangeRingsColors ( )
protectedvirtual
virtual void makVrf::DtRangeRingVisualizer::slot_entityRangeRingsEnabled ( const DtUUID ,
int  setting 
)
protectedvirtual
virtual void makVrf::DtRangeRingVisualizer::setSelected ( bool  )
protectedvirtual

Check for show range rings if selected flag.

Reimplemented from makVrv::DtStateVisualizer.

virtual void makVrf::DtRangeRingVisualizer::updateScaleOfRings ( )
protectedpure virtual

Overrides that need to be implemented to complete this class.

Sets the scale of the rings given the myScale value

Implemented in makVrf::Dt2DRangeRingVisualizer, and makVrf::DtRangeSphereVisualizer.

virtual void makVrf::DtRangeRingVisualizer::createRing ( const DtRangeItem ,
int  extensionIndex 
)
protectedpure virtual
virtual void makVrf::DtRangeRingVisualizer::updateRingOptions ( RingStruct )
protectedpure virtual
virtual void makVrf::DtRangeRingVisualizer::destroyOuterRing ( RingStruct )
protectedpure virtual

Destroys data with the given ring.

Implemented in makVrf::Dt2DRangeRingVisualizer, and makVrf::DtRangeSphereVisualizer.

virtual void makVrf::DtRangeRingVisualizer::setRangeRingGeometry ( RingStruct )
protectedpure virtual

Sets the geometry of the ring.

Implemented in makVrf::Dt2DRangeRingVisualizer, and makVrf::DtRangeSphereVisualizer.

virtual void makVrf::DtRangeRingVisualizer::setRangeRingColors ( RingStruct )
protectedpure virtual

Sets colors for ring.

Implemented in makVrf::Dt2DRangeRingVisualizer, and makVrf::DtRangeSphereVisualizer.

Member Data Documentation

RangeRings makVrf::DtRangeRingVisualizer::myRangeRings
protected
DtEntityStateListenerExtensions* makVrf::DtRangeRingVisualizer::myExtensions
protected
float makVrf::DtRangeRingVisualizer::myScale
protected
bool makVrf::DtRangeRingVisualizer::myEntityRangeRingsEnabled
protected
RangeRingRanges makVrf::DtRangeRingVisualizer::myRangeRingRanges
protected
LabelText makVrf::DtRangeRingVisualizer::myLabelText
protected
bool makVrf::DtRangeRingVisualizer::mySettingsInitialized
protected

The documentation for this class was generated from the following file:

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)