VR-Vantage API Documentation
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
DtSdcAttributeGroupObject Class Reference

An instance of an attribute group (and corresponding attribute values) More...

Inheritance diagram for DtSdcAttributeGroupObject:
Inheritance graph
[legend]

Public Member Functions

 DtSdcAttributeGroupObject (DtExerciseConn *exConn, unsigned id, DtSdcAttributeGroupTemplateObject *pTemplate, const DtSdc3DAttachPoint &attachment, const DtVector &enuOffset=DtVector::zero(), DtSdcColor color=DtSdcColor::DtSdcWhite, bool flashing=false)
 Construct the attribute group Draw Control Object.
virtual ~DtSdcAttributeGroupObject ()
virtual
DtSdcAttributeGroupTemplateObject
attributeGroupTemplate () const
 attribute group template accessor
virtual const DtSdc3DAttachPointattachment () const
 attachment accessor
virtual void setAttachment (const DtSdc3DAttachPoint &attachment)
 attachment mutator
virtual const DtVector & offset () const
 offset accessor
virtual void setOffset (const DtVector &enuOffset)
 enuOffset mutator
virtual const DtSdcColorcolor () const
 color accessor
virtual void setColor (const DtSdcColor &color)
 color mutator
virtual bool flashing () const
 flashing accessor
virtual void setFlashing (bool flashing)
 flashing mutator
virtual DtString bmpAttributeValue (const DtString &attName) const
 bmp attribute value accessor
virtual void setBmpAttributeValue (const DtString &attName, const DtString &filename)
 bmp attribute value mutator
virtual double numericAttributeValue (const DtString &attName) const
 numeric attribute value accessor
virtual void setNumericAttributeValue (const DtString &attName, double xVal)
 numeric attribute value mutator
virtual double valueBarAttributeValue (const DtString &attName) const
 value bar attribute value accessor
virtual void setValueBarAttributeValue (const DtString &attName, double xVal)
 value bar attribute value mutator
virtual double graphAttributeValueX (const DtString &attName) const
 graph attribute x-value accessor
virtual void setGraphAttributeValueX (const DtString &attName, double xVal)
 graph attribute x-value mutator
virtual double graphAttributeValueY (const DtString &attName) const
 graph attribute y-value accessor
virtual void setGraphAttributeValueY (const DtString &attName, double yVal)
 graph attribute y-value mutator
virtual DtSdcAttributeValueMapattributeValueMap ()
 atribute value map accessor
virtual void setRemoteGraphicSet (const std::string &setName)
virtual void update ()
 update the internal attribute group pdu
- Public Member Functions inherited from DtSdcObject
 DtSdcObject (DtExerciseConn *exConn, unsigned id, const DtString &objName)
 Parameterized constructor.
virtual ~DtSdcObject ()
 Virtual destructor.
virtual unsigned id () const
 id accessor
virtual void setId (unsigned id)
 id mutator
virtual const
DtGlobalObjectDesignator & 
globalId () const
virtual void setVisible (bool yesNo)
virtual bool visible () const

Protected Member Functions

virtual void createAttributes ()
virtual void destroyAttributes ()
virtual void copyAttributes (const DtSdcAttributeValueMap &valueMap)

Protected Attributes

DtEnvironmentalPointRecord myPointRecord
Dt3DGraphicalObjectStateRecord myGraphicObjectStateRecord
DtAttributeStateRecord myAttributeStateRecord
DtSdc3DAttachPoint myAttachment
DtVector myEnuOffset
DtSdcColor myColor
bool myFlashing
DtSdcAttributeGroupTemplateObjectmyAttributeGroupTemplate
DtSdcAttributeValueMap myValueMap
- Protected Attributes inherited from DtSdcObject
unsigned myId
DtEnvironmentProcessPublisher myPublisher
bool myVisible
DtSdcColor myEmptyColor

Private Member Functions

 DtSdcAttributeGroupObject ()
 Default constructor.
 DtSdcAttributeGroupObject (const DtSdcAttributeGroupObject &orig)
 Copy constructor.
DtSdcAttributeGroupObjectoperator= (const DtSdcAttributeGroupObject &rhs)
 Assignment operator.

Detailed Description

An instance of an attribute group (and corresponding attribute values)

DtSdcAttributeGroupObject represents an attribute group that can be positioned and displayed in the 3D scene. A color can be specified; and the group can flash, if desired.

Constructor & Destructor Documentation

DtSdcAttributeGroupObject::DtSdcAttributeGroupObject ( DtExerciseConn *  exConn,
unsigned  id,
DtSdcAttributeGroupTemplateObject pTemplate,
const DtSdc3DAttachPoint attachment,
const DtVector &  enuOffset = DtVector::zero(),
DtSdcColor  color = DtSdcColor::DtSdcWhite,
bool  flashing = false 
)

Construct the attribute group Draw Control Object.

Parameters
idPassed to DtSdcObject base (see)
templateA pointer to the attribute group template that this group is based on
attachmentDtSdc3DAttachPoint indicating how the group object is positioned in 3D
enuOffseta 3D vector indicating an east/north/up offset (in meters) from the base attachment
colorThe color of the group object
flashingA boolean parameter indicating whether or not the group object should be flashing

References createAttributes(), Dt3DGraphicalObjectCategoryAttributeGroup, Dt3DGraphicalObjectKind, DtSdcObject::id(), DtSdcObject::myPublisher, setAttachment(), setColor(), setFlashing(), and setOffset().

DtSdcAttributeGroupObject::~DtSdcAttributeGroupObject ( )
virtual

References destroyAttributes().

DtSdcAttributeGroupObject::DtSdcAttributeGroupObject ( )
private

Default constructor.

Private and not implemented - you must supply an id, template, and attachment parameters to construct the attribute group

DtSdcAttributeGroupObject::DtSdcAttributeGroupObject ( const DtSdcAttributeGroupObject orig)
private

Copy constructor.

Private and not implemented - not copyable.

Member Function Documentation

DtSdcAttributeGroupObject& DtSdcAttributeGroupObject::operator= ( const DtSdcAttributeGroupObject rhs)
private

Assignment operator.

Private and not implemented - not copyable.

DtSdcAttributeGroupTemplateObject * DtSdcAttributeGroupObject::attributeGroupTemplate ( ) const
virtual

attribute group template accessor

Get the attribute group template that this group is using

Returns
attribute group

References myAttributeGroupTemplate.

const DtSdc3DAttachPoint & DtSdcAttributeGroupObject::attachment ( ) const
virtual

attachment accessor

Get the attribute group's attachment information

Returns
DtSdc3DAttachPoint, which contains the attachment type and associated data

References myAttachment.

Referenced by setAttachment().

void DtSdcAttributeGroupObject::setAttachment ( const DtSdc3DAttachPoint attachment)
virtual
const DtVector & DtSdcAttributeGroupObject::offset ( ) const
virtual

offset accessor

Get the attribute group's east/north/up offset from the attach point

Returns
[X, Y, Z] offset

References myEnuOffset.

Referenced by setOffset().

void DtSdcAttributeGroupObject::setOffset ( const DtVector &  enuOffset)
virtual

enuOffset mutator

Set the attribute group's east/north/up offset from the attach point

Parameters
enuOffset[X, Y, Z]

References myEnuOffset, myGraphicObjectStateRecord, offset(), and Dt3DGraphicalObjectStateRecord::setOffset().

Referenced by DtSdcAttributeGroupObject().

const DtSdcColor & DtSdcAttributeGroupObject::color ( ) const
virtual

color accessor

Get the color assigned to the attribute group

Returns
Instance of DtSdcColor

Reimplemented from DtSdcObject.

References myColor.

Referenced by setColor().

void DtSdcAttributeGroupObject::setColor ( const DtSdcColor color)
virtual

color mutator

Set the color to use when drawing the attribute group

Parameters
colorThe DtSdcColor to use

Reimplemented from DtSdcObject.

References DtSdcColor::alpha(), DtSdcColor::blue(), color(), DtSdcColor::green(), myColor, myGraphicObjectStateRecord, DtSdcColor::red(), and Dt3DGraphicalObjectStateRecord::setColor().

Referenced by DtSdcAttributeGroupObject().

bool DtSdcAttributeGroupObject::flashing ( ) const
virtual

flashing accessor

Get the boolean that indicates whether or not the attribute group should flash

Returns
true or false

Reimplemented from DtSdcObject.

References myFlashing.

Referenced by setFlashing().

void DtSdcAttributeGroupObject::setFlashing ( bool  flashing)
virtual

flashing mutator

Set the boolean that indicates whether or not the attribute group should flash

Parameters
flashingtrue or false

Reimplemented from DtSdcObject.

References flashing(), myFlashing, myGraphicObjectStateRecord, and Dt3DGraphicalObjectStateRecord::setFlashing().

Referenced by DtSdcAttributeGroupObject().

DtString DtSdcAttributeGroupObject::bmpAttributeValue ( const DtString &  attName) const
virtual

bmp attribute value accessor

Get the filename of the bitmap to use for the specified attribute in this attribute group

Returns
The .bmp filename. If the attribute is not a BmpAttribute, this returns DtString::nullString()

References myValueMap, and DtSdcAttributeValue::textValue().

void DtSdcAttributeGroupObject::setBmpAttributeValue ( const DtString &  attName,
const DtString &  filename 
)
virtual

bmp attribute value mutator

Set the filename of the bitmap to display for the specified attribute in this attribute group. If the attribute is not a bmp attribute, this call has no effect

Parameters
attIdId of the attribute template that the attribute corresponds to
filenameFilename of the bitmap to display

References myValueMap, DtSdcAttributeValue::setDirty(), and DtSdcAttributeValue::setTextValue().

double DtSdcAttributeGroupObject::numericAttributeValue ( const DtString &  attName) const
virtual

numeric attribute value accessor

Get the numeric value used for the specified attribute in this attribute group

Returns
The floating point number that will be displayed as part of the attribute for this attribute group. If the attribute is not a numeric attribute, this will return 0.

References myValueMap, and DtSdcAttributeValue::xValue().

void DtSdcAttributeGroupObject::setNumericAttributeValue ( const DtString &  attName,
double  xVal 
)
virtual

numeric attribute value mutator

Set the numeric value to display for the specified attribute in this attribute group. If the attribute is not a numeric attribute, this call has no effect

Parameters
attIdId of the attribute template that the attribute corresponds to
xValThe numeric value to display

References myValueMap, DtSdcAttributeValue::setDirty(), and DtSdcAttributeValue::setXValue().

double DtSdcAttributeGroupObject::valueBarAttributeValue ( const DtString &  attName) const
virtual

value bar attribute value accessor

Get the value bar value used for the specified attribute in this attribute group

Returns
The floating point number that will be used to determine how much of the value bar displayed as part of the attribute for this attribute group will be filled in. Note that this is actually just a pseudonym for numericAttributeValue(), as each attribute type uses the same internal value field

References myValueMap, and DtSdcAttributeValue::xValue().

void DtSdcAttributeGroupObject::setValueBarAttributeValue ( const DtString &  attName,
double  xVal 
)
virtual

value bar attribute value mutator

Set the value bar value to display for the specified attribute in this attribute group. The value specified will be used to determine how much of the value bar displayed as part of the attribute for this attribute group will be filled in. Note that this is actually just a pseudonym for setNumericAttributeValue(), as each attribute type uses the same internal value field

Parameters
attIdId of the attribute template that the attribute corresponds to
xValThe numeric value that determines the value bar appearance

References myValueMap, DtSdcAttributeValue::setDirty(), and DtSdcAttributeValue::setXValue().

double DtSdcAttributeGroupObject::graphAttributeValueX ( const DtString &  attName) const
virtual

graph attribute x-value accessor

Get the last x-coordinate given for the specified attribute in this attribute group. A graph attribute actually displays a line graph using the last 10 x and y values given; only the last of each is available from the sending side of the API.

Returns
The last floating point graph x-value specified. Note that this is actually just a pseudonym for numericAttributeValue(), as each attribute type uses the same internal value field

References myValueMap, and DtSdcAttributeValue::xValue().

void DtSdcAttributeGroupObject::setGraphAttributeValueX ( const DtString &  attName,
double  xVal 
)
virtual

graph attribute x-value mutator

Set the x-coordinate on the next point displayed in the specified attribute in this attribute group. A graph attribute actually displays a line graph using the last 10 x and y values given. Note that this is actually just a pseudonym for setNumericAttributeValue(), as each attribute type uses the same internal value field

Parameters
attIdId of the attribute template that the attribute corresponds to
xValThe x-coordinate of the next x,y point in the graph

References myValueMap, DtSdcAttributeValue::setDirty(), and DtSdcAttributeValue::setXValue().

double DtSdcAttributeGroupObject::graphAttributeValueY ( const DtString &  attName) const
virtual

graph attribute y-value accessor

Get the last y-coordinate given for the specified attribute in this attribute group. A graph attribute actually displays a line graph using the last 10 x and y values given; only the last of each is available from the sending side of the API.

Returns
The last floating point graph y-value specified.

References myValueMap, and DtSdcAttributeValue::yValue().

void DtSdcAttributeGroupObject::setGraphAttributeValueY ( const DtString &  attName,
double  yVal 
)
virtual

graph attribute y-value mutator

Set the y-coordinate on the next point displayed in the specified attribute in this attribute group. A graph attribute actually displays a line graph using the last 10 x and y values given.

Parameters
attIdId of the attribute template that the attribute corresponds to
yValThe y-coordinate of the next x,y point in the graph

References myValueMap, DtSdcAttributeValue::setDirty(), and DtSdcAttributeValue::setYValue().

DtSdcAttributeValueMap & DtSdcAttributeGroupObject::attributeValueMap ( )
virtual

atribute value map accessor

Get the attrbute value map. This is an std::map, indexed by attribute template id and containing DtSdcAttributeValue*s; so you can access the attribute value directly (and the DtSdcAttributeUpdatePdu used to update it) directly (but this is not normally needed if you use the specific attribute value mutators provided.

Returns
A reference to the attribute value map (a DtSdcAttributeValueMap)

References myValueMap.

void DtSdcAttributeGroupObject::setRemoteGraphicSet ( const std::string &  setName)
virtual
void DtSdcAttributeGroupObject::update ( )
virtual

update the internal attribute group pdu

Make sure the internal pdu reflects the actual state of the attribute group object's members. This is necessary because some members can be modified directly (which make the interface easier to use). DtStealthRemoteDrawer::update() calls this, so the user doesn't need to; but if the user is accessing the pdu directly (via the pdu() accessor) this should be called before using the pdu.

Implements DtSdcObject.

References myAttributeStateRecord, myGraphicObjectStateRecord, myPointRecord, DtSdcObject::myPublisher, myValueMap, DtAttributeStateRecord::setNumberOfValueUpdates(), and DtAttributeStateRecord::setValueUpdate().

void DtSdcAttributeGroupObject::createAttributes ( )
protectedvirtual
void DtSdcAttributeGroupObject::destroyAttributes ( )
protectedvirtual

References myValueMap.

Referenced by copyAttributes(), and ~DtSdcAttributeGroupObject().

void DtSdcAttributeGroupObject::copyAttributes ( const DtSdcAttributeValueMap valueMap)
protectedvirtual

References destroyAttributes(), and myValueMap.

Member Data Documentation

DtEnvironmentalPointRecord DtSdcAttributeGroupObject::myPointRecord
protected

Referenced by setAttachment(), and update().

Dt3DGraphicalObjectStateRecord DtSdcAttributeGroupObject::myGraphicObjectStateRecord
protected
DtAttributeStateRecord DtSdcAttributeGroupObject::myAttributeStateRecord
protected

Referenced by createAttributes(), and update().

DtSdc3DAttachPoint DtSdcAttributeGroupObject::myAttachment
protected

Referenced by attachment(), and setAttachment().

DtVector DtSdcAttributeGroupObject::myEnuOffset
protected

Referenced by offset(), and setOffset().

DtSdcColor DtSdcAttributeGroupObject::myColor
protected

Referenced by color(), and setColor().

bool DtSdcAttributeGroupObject::myFlashing
protected

Referenced by flashing(), and setFlashing().

DtSdcAttributeGroupTemplateObject* DtSdcAttributeGroupObject::myAttributeGroupTemplate
protected
DtSdcAttributeValueMap DtSdcAttributeGroupObject::myValueMap
protected

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


Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)