VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
DtSimArtPartDescriptor Class Reference

A readable, writable type that holds an articulated part type, attached-to part type, attachment point, and a list of art-part params (DtSimArtPartParamList). More...

Inheritance diagram for DtSimArtPartDescriptor:
Inheritance graph
[legend]

Public Member Functions

 DtSimArtPartDescriptor (const DtString &partName, DtReaderWriterRegistry *parentRegistry=NULL)
 real constructor More...
 
 DtSimArtPartDescriptor (const DtSymbolString &partName, DtReaderWriterRegistry *parentRegistry=NULL)
 
 DtSimArtPartDescriptor (const DtString &partName, const DtSimArtPartDescriptor &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 copy constructor More...
 
 DtSimArtPartDescriptor (const DtSymbolString &partName, const DtSimArtPartDescriptor &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 
 DtSimArtPartDescriptor (const DtSimArtPartDescriptor &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 
DtSimArtPartDescriptoroperator= (const DtSimArtPartDescriptor &orig)
 assignment More...
 
virtual ~DtSimArtPartDescriptor ()
 
virtual DtSimArtPartDescriptorclone (const DtString &partName, DtReaderWriterRegistry *parentRegistry=NULL) const
 
virtual DtSimArtPartDescriptorclone (const DtSymbolString &partName, DtReaderWriterRegistry *parentRegistry=NULL) const
 
virtual bool mergeSpecifiedParameters (const DtSimArtPartDescriptor &other, MergeRule rule=AllSpecifiedValues)
 Sets local parameter values to that of the other part, as long as the other part has that parameter set. More...
 
virtual void setAllValuesUnspecified ()
 Sets all values to be unspecified so that they are not saved and simply reloaded from model defaults. More...
 
virtual void markMatchingFieldsUnspecified (const DtSimArtPartDescriptor &other)
 Sets all values that match the other descriptor to unspecified. More...
 
virtual void writeOnlySpecifiedParameters ()
 Marks all articulated part parameters as read only if their value is not specified. More...
 
virtual void writeOnlyApplicableParameters ()
 Marks all articulated part parameters as read only if the part has no movement in the specified dimension. More...
 
virtual void prePutSelf ()
 Before saving, marks all unspecified parameters as read only so they are not saved in the file, and vice versa. More...
 
bool operator== (const DtSimArtPartDescriptor &rhs) const
 Iterates over all items and calls the factory to compare. More...
 
bool operator!= (const DtSimArtPartDescriptor &rhs) const
 
virtual bool approxEq (const DtSimArtPartDescriptor &rhs, double diff) const
 
virtual const charxmlType () const
 
virtual DtString partTypeSystemParamName () const
 Not for general use. More...
 
virtual void setPartTypeSystemParamName (const DtString &paramName)
 Not for general use. Overrides the part type system parameter name. More...
 
virtual void setParamList (const DtSimArtPartParamList &paramList)
 Accessor/mutator for myParamList. More...
 
virtual const
DtSimArtPartParamList
paramList () const
 
virtual bool paramListSpecified () const
 
virtual void setPartType (DtArtPartType partType)
 Accessor/mutator for myPartType. More...
 
virtual DtArtPartType partType () const
 
virtual bool partTypeSpecified () const
 
virtual void setParentPartType (DtArtPartType partType)
 Accessor/mutator for myParentPartType. More...
 
virtual DtArtPartType parentPartType () const
 
virtual bool parentPartTypeSpecified () const
 
virtual DtReal azimuthNeutralOffset () const
 Accessor/mutator for myAzimuthNeutralOffset. More...
 
virtual void setAzimuthNeutralOffset (DtReal offset)
 
virtual bool azimuthNeutralOffsetSpecified () const
 
- Public Member Functions inherited from DtRwArtPartState
 DtRwArtPartState ()
 Default constructor. More...
 
 DtRwArtPartState (const DtString &partName, DtReaderWriterRegistry *parentRegistry=NULL)
 Constructor. More...
 
 DtRwArtPartState (const DtSymbolString &partName, DtReaderWriterRegistry *parentRegistry=NULL)
 Constructor. More...
 
 DtRwArtPartState (const DtRwArtPartState &orig, const DtString &partName, DtReaderWriterRegistry *parentRegistry=NULL)
 Copy constructor. More...
 
 DtRwArtPartState (const DtRwArtPartState &orig, const DtSymbolString &partName, DtReaderWriterRegistry *parentRegistry=NULL)
 Copy constructor. More...
 
const DtRwArtPartStateoperator= (const DtRwArtPartState &orig)
 assignment More...
 
virtual ~DtRwArtPartState ()
 
virtual bool mergeSpecifiedParameters (const DtRwArtPartState &other, MergeRule rule=AllSpecifiedValues)
 Sets local parameter values to that of the other part, as long as the other part has that parameter set. More...
 
virtual void markMatchingFieldsUnspecified (const DtRwArtPartState &other)
 Sets all values that match the other part state to unspecified. More...
 
virtual bool fullAzimuthRotation () const
 Returns true if the part can perform a full azimuth rotation. More...
 
bool operator== (const DtRwArtPartState &rhs) const
 
bool operator!= (const DtRwArtPartState &rhs) const
 
virtual void setAttachPoint (const DtVector &attachPoint, bool isSpecified=true)
 Accessor/mutator for myAttachPoint. More...
 
virtual DtVector attachPoint () const
 
virtual bool attachPointSpecified () const
 
virtual DtVector endPoint () const
 Accessor/mutator for myEndPoint. More...
 
virtual void setEndPoint (const DtVector &loc, bool isSpecified=true)
 
virtual bool endPointSpecified () const
 
virtual double position () const
 Accessor/mutator for myPosition. More...
 
virtual void setPosition (double val, bool isSpecified=true)
 
virtual bool positionSpecified () const
 
virtual double positionRate () const
 Accessor/mutator for myPositionRate. More...
 
virtual void setPositionRate (double val, bool isSpecified=true)
 
virtual bool positionRateSpecified () const
 
virtual double maxPositionRate () const
 Accessor/mutator for myMaxPositionRate. More...
 
virtual void setMaxPositionRate (double val, bool isSpecified=true)
 
virtual bool maxPositionRateSpecified () const
 
virtual double extension () const
 Accessor/mutator for myExtension. More...
 
virtual void setExtension (double val, bool isSpecified=true)
 
virtual bool extensionSpecified () const
 
virtual double extensionRate () const
 Accessor/mutator for myExtensionRate. More...
 
virtual void setExtensionRate (double val, bool isSpecified=true)
 
virtual bool extensionRateSpecified () const
 
virtual double maxExtensionRate () const
 Accessor/mutator for myMaxExtensionRate. More...
 
virtual void setMaxExtensionRate (double val, bool isSpecified=true)
 
virtual bool maxExtensionRateSpecified () const
 
virtual DtVector translation () const
 Accessor/mutator for myTranslation. More...
 
virtual void setTranslation (const DtVector &val, bool isSpecified=true)
 
virtual bool translationSpecified () const
 
virtual DtVector minTranslation () const
 Accessor/mutator for myMinTranslation. More...
 
virtual void setMinTranslation (const DtVector &val, bool isSpecified=true)
 
virtual bool minTranslationSpecified () const
 
virtual DtVector maxTranslation () const
 Accessor/mutator for myMaxTranslation. More...
 
virtual void setMaxTranslation (const DtVector &val, bool isSpecified=true)
 
virtual bool maxTranslationSpecified () const
 
virtual DtVector translationRate () const
 Accessor/mutator for myTranslationRate. More...
 
virtual void setTranslationRate (const DtVector &val, bool isSpecified=true)
 
virtual bool translationRateSpecified () const
 
virtual DtVector maxTranslationRate () const
 Accessor/mutator for myMaxTranslationRate. More...
 
virtual void setMaxTranslationRate (const DtVector &val, bool isSpecified=true)
 
virtual bool maxTranslationRateSpecified () const
 
virtual double azimuth () const
 Accessor/mutator for myAzimuth. More...
 
virtual void setAzimuth (double angle, bool isSpecified=true)
 
virtual bool azimuthSpecified () const
 
virtual double minAzimuth () const
 Accessor/mutator for myMinAzimuth. More...
 
virtual void setMinAzimuth (double angle, bool isSpecified=true)
 
virtual bool minAzimuthSpecified () const
 
virtual double maxAzimuth () const
 Accessor/mutator for myMaxAzimuth. More...
 
virtual void setMaxAzimuth (double angle, bool isSpecified=true)
 
virtual bool maxAzimuthSpecified () const
 
virtual double azimuthRate () const
 Accessor/mutator for myAzimuthRate. More...
 
virtual void setAzimuthRate (double rate, bool isSpecified=true)
 
virtual bool azimuthRateSpecified () const
 
virtual double maxAzimuthRate () const
 Accessor/mutator for myMaxAzimuthRate. More...
 
virtual void setMaxAzimuthRate (double rate, bool isSpecified=true)
 
virtual bool maxAzimuthRateSpecified () const
 
virtual double elevation () const
 Accessor/mutator for myElevation. More...
 
virtual void setElevation (double angle, bool isSpecified=true)
 
virtual bool elevationSpecified () const
 
virtual double minElevation () const
 Accessor/mutator for myMinElevation. More...
 
virtual void setMinElevation (double angle, bool isSpecified=true)
 
virtual bool minElevationSpecified () const
 
virtual double maxElevation () const
 Accessor/mutator for myMaxElevation. More...
 
virtual void setMaxElevation (double angle, bool isSpecified=true)
 
virtual bool maxElevationSpecified () const
 
virtual double elevationRate () const
 Accessor/mutator for myElevationRate. More...
 
virtual void setElevationRate (double rate, bool isSpecified=true)
 
virtual bool elevationRateSpecified () const
 
virtual double maxElevationRate () const
 Accessor/mutator for myMaxElevationRate. More...
 
virtual void setMaxElevationRate (double rate, bool isSpecified=true)
 
virtual bool maxElevationRateSpecified () const
 
virtual double rotation () const
 Accessor/mutator for myRotation. More...
 
virtual void setRotation (double angle, bool isSpecified=true)
 
virtual bool rotationSpecified () const
 
virtual double minRotation () const
 Accessor/mutator for myMinRotation. More...
 
virtual void setMinRotation (double angle, bool isSpecified=true)
 
virtual bool minRotationSpecified () const
 
virtual double maxRotation () const
 Accessor/mutator for myRotation. More...
 
virtual void setMaxRotation (double angle, bool isSpecified=true)
 
virtual bool maxRotationSpecified () const
 
virtual double rotationRate () const
 Accessor/mutator for myRotationRate. More...
 
virtual void setRotationRate (double rate, bool isSpecified=true)
 
virtual bool rotationRateSpecified () const
 
virtual double maxRotationRate () const
 Accessor/mutator for myMaxRotationRate. More...
 
virtual void setMaxRotationRate (double rate, bool isSpecified=true)
 
virtual bool maxRotationRateSpecified () const
 
virtual const DtStringassociatedComponent () const
 Accessor/mutator for myAssociatedComponent. More...
 
virtual void setAssociatedComponent (const DtString &component, bool isSpecified=true)
 
virtual bool associatedComponentSpecified () const
 
virtual const DtStringcomment () const
 Accessor/mutator for myComment. More...
 
virtual void setComment (const DtString &component, bool isSpecified=true)
 
virtual bool commentSpecified () const
 
virtual const std::set
< DtString > & 
configSources () const
 Accessor/mutator for #myConfigSource. More...
 
virtual void setConfigSources (const std::set< DtString > &srcs)
 
virtual void addConfigSource (const DtString &src)
 
- Public Member Functions inherited from DtReaderWriter
 DtReaderWriter ()
 default constructor More...
 
 DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 real constructor Setting the readonly flag prevents object from writing itself to the stream. More...
 
 DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 
 DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 pseudo-copy constructor More...
 
 DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 
 DtReaderWriter (const DtReaderWriter &, DtReaderWriterRegistry *parentRegistry=NULL)
 copy constructor More...
 
const DtReaderWriteroperator= (const DtReaderWriter &orig)
 assignment operator More...
 
bool operator== (const DtReaderWriter &) const
 Equivalence operator. More...
 
bool operator!= (const DtReaderWriter &rhs)
 
virtual ~DtReaderWriter ()
 destructor More...
 
virtual void putSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
 Top level call to write itself to file. More...
 
virtual void postPutSelf ()
 Called after either version of put self (file or environment). Default is no-op. More...
 
virtual void getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
 Top level to read itself from an input stream. More...
 
virtual void postGetSelf ()
 Called after either version of getSelf (mtl or environment). Default is no-op. More...
 
virtual void preGetSelf ()
 Called before either version of get self (file or environment). Default is no-op. More...
 
virtual void writeSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
 Called from putSelf, calls myRegistry.putSelf which in turn calls putSelf on each reader/writer in the registry. More...
 
virtual DtSymbolString name () const
 Accessor for name of this readable/writable object. More...
 
virtual void addAlias (const DtSymbolString &alias)
 Add an alias as an alternative name for this object. More...
 
virtual void addAlias (const DtString &alias)
 
virtual bool hasAlias (const DtSymbolString &alias)
 
virtual const aliasContaineraliases () const
 
virtual void setReadonly (bool flag)
 Set read-only flag. More...
 
bool isReadonly () const
 
virtual void reset ()
 For those reader/writer items that support it, resets the reader/writer value to original state Default is no-op. More...
 
virtual int alignment () const
 For those items that are sent over the network via HLA, this will give the network alignment. More...
 
virtual bool variableIsBound () const
 
virtual void unbindVariable ()
 Sets the myVariableIsBound flag to false. More...
 
virtual void setName (const DtString &)
 Set the name of the object. More...
 
virtual DtString prettyPrint () const
 Routine to return a human readable form of the reader/writer variable. More...
 
std::string debugText () const
 
virtual void bindVariables (DtVariableBindingsList variableBindings)
 Runs a variable binding pass on this reader writer and any of its children. More...
 
virtual std::list
< DtVariableNameType
unboundVariables () const
 
bool invalid () const
 
virtual bool hasChild (const DtReaderWriter *p) const
 Returns true if this variable has a child p in it's chain. More...
 
virtual bool hasVariableReference () const
 Returns true if this item or any item in the registry (recursive) is a variable reference. More...
 
virtual void bindLocalVariables (const DtVariableBindingsList &variableBindings)
 Checks to see if this RW object is a variable reference that can be bound using the provided bindings. More...
 
virtual void recordUpdateTime () const
 Can be implemented in subclasses to stamp the time when updated. More...
 
virtual bool wasUpdatedSince (DtTime t) const
 Can be implemented in subclasses to return true if an update occurred after the specified time. More...
 
virtual bool changedSinceLastChecked ()
 Returns true if this objects value has changed since the last time this function was called. More...
 
virtual bool peekChangedSinceLastChecked () const
 Returns the value that changedSinceLastChecked would return but does not reset the internal flag. More...
 
virtual void putData (std::string &fp, int indentLevel=0)
 Deriving class overrides these to get/put class specific data. More...
 
virtual DtlObjPtr getData (DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
 
virtual void setValueSpecified (bool specified, bool recurse=false)
 The specified flags are used for optional values. More...
 
virtual bool valueSpecified () const
 
virtual bool isVariableReference () const
 Specifies whether or not this reader writer is really a variable that is specified elsewhere. More...
 
virtual void setIsVariableReference (bool value)
 
virtual void clearAllVariableReferenceFlags ()
 Clears out all variable reference flags from all readerwriter items in registry recursively. More...
 
virtual DtSymbolString variableName () const
 The variable name, if this object is a variable reference. More...
 
virtual void setVariableName (const DtSymbolString variableName)
 
virtual const DtReaderWriterdefaultRWValue () const
 The default value to use if the reader/writer object is a variable and that variable is not specified. More...
 
virtual DtReaderWriterdefaultRWValue ()
 
virtual void setDefaultRWValue (DtReaderWriter *)
 Previous default value, if exists, will be removed and replaced with a clone of the supplied variable. More...
 
virtual bool checkAndSetDefaultRWValue (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
 Give the stream, if the stream contains a default value then set it here. More...
 
const DtReaderWriterRegistryregistry () const
 Collection of child DtReaderWriter nodes owned by this object. More...
 
DtReaderWriterRegistryregistry ()
 
virtual DtPropertyInterfaceproperty ()
 
virtual const DtPropertyInterfaceproperty () const
 
virtual DtString toXml () const
 
virtual DtRwVariableBindingsgenerateVariableBindings () const
 Iterates over the registry (recursively) and returns a variable bindings object that contains all the variables that are contained in this read/writer class. More...
 
virtual bool toXml (const DtFilename &) const
 Writes contents of xml result to the given filename. More...
 
virtual bool fromXml (const DtString &)
 Restores object from given xml string. Returns true if valid. More...
 
virtual bool fromXmlFile (const DtFilename &)
 Restores object from given xml file. More...
 
virtual void putSelf (DtEnvironmentSP, DtEnvValueSP parent) const
 
virtual void putData (DtEnvironmentSP, DtEnvValueSP value) const
 Override to add attributes of actual data. More...
 
virtual void putVariableReference (DtEnvironmentSP, DtEnvValueSP value) const
 Called when the item is a variable reference. More...
 
virtual void getSelf (const DtEnvironmentSP, const DtEnvValueSP root, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList())
 
virtual void getData (const DtEnvironmentSP, const DtEnvValueSP, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList())
 Gets data from the environment value. More...
 
virtual void unrecognizedItem (const DtEnvironmentSP env, const DtEnvValueSP root, const SearchPaths &searchPaths, const DtVariableBindingsList &varBindings)
 Called when the xml reader tries to parse an unknown reader/writer item. Default is a no-op. More...
 
virtual void getVariableReference (DtEnvironmentSP, DtEnvValueSP value)
 Called when the item is a variable reference. More...
 

Static Public Member Functions

static const chartheXmlType ()
 The type that is used when archiving to an XML stream. More...
 
- Static Public Member Functions inherited from DtRwArtPartState
static double defaultRotationRate ()
 The rotation rate to be used when a part is not configured with one, in radians/sec. More...
 
static void setDefaultRotationRate (double rate)
 
static double defaultTranslationRate ()
 The rotation rate to be used when a part is not configured with one, in m/s. More...
 
static void setDefaultTranslationRate (double rate)
 
- Static Public Member Functions inherited from DtReaderWriter
static void putIndent (std::string &fp, int indentLevel)
 
static const
DtVariableBindingsList
nullVariableReference ()
 
static void setPostGetSelfCallback (DtGetSelfCallbackFcn fcn, void *usrData)
 
static void setPrePutSelfCallback (DtPutSelfCallbackFcn fcn, void *usrData)
 
static void setPutIndent (bool)
 
static bool putIndent ()
 
static const chartheXmlType ()
 The type that is used when archiving to an XML stream. More...
 
static const DtFilename & appPath ()
 Gets the current working directory. More...
 
static void setFactoryCreatorFunction (DtReaderWriterFactoryCreatorFcn fcn)
 Sets the function to create the DtReaderWriterFactory. More...
 
static void createReaderWriterFactory ()
 
static void cleanupFactory ()
 
static DtReaderWriterFactoryfactory ()
 
static void setOutputStream (DtOutputStream *stream)
 
static DtOutputStream & outputStream ()
 
static DtReaderWritercreateFromXmlFile (const DtFilename &, bool createAsProperty=false)
 Given a filename, returns a newly created reader/writer object from the object found within. More...
 
static DtReaderWritercreateFromXml (const DtString &, bool createAsProperty=false)
 Given a xml string, returns a newly created reader/writer object from the object found within. More...
 
static DtReaderWritercreateFromEnvironment (DtEnvironmentSP, bool createAsProperty=false)
 Given a xml environment, returns a newly created reader/writer object from the object found within. More...
 
static DtString getAttribute (DtEnvironmentSP env, const DtString &name, DtEnvValueSP root)
 Gets the named attribute from a DtEnvValueSP. More...
 

Protected Member Functions

 DtSimArtPartDescriptor ()
 default constructor More...
 
virtual const charreaderWriterType () const
 Used to supply a string type that this reader writer type is. More...
 
- Protected Member Functions inherited from DtReaderWriter
virtual void bindToRwAsVariable (const DtReaderWriter *rw)
 Copies values from the specified DtReaderWriter. More...
 

Protected Attributes

DtString myPartTypeSystemParamNameOverride
 Not for general use. Stores an overridden part type system parameter name. More...
 
parameters

These parameters are available for setting in the OPD files.

DtRwInt myPartType
 Parameter Name: art-part-type Parameter Description: The type of an articulated part. More...
 
DtRwInt myParentPartType
 Parameter Name: parent-part-type
Parameter Description: The type of the object to which an articulated part is attached. More...
 
DtSimArtPartParamList myParamList
 Parameter Name: art-part-param-list
Parameter Description: List of the VR-Link articulated part parameters that are published for this part. More...
 
DtRwReal myAzimuthNeutralOffset
 Parameter Name: azimuth-neutral-offset
Parameter Description: Sets and gets the neutral azimuth offset. More...
 
- Protected Attributes inherited from DtRwArtPartState
std::set< DtStringmyConfigSources
 
DtRwOffsetVector myAttachPoint
 Parameter Name: attach-point Parameter Description: The point at which at the articulated or attached part is attached to another object. More...
 
DtRwOffsetVector myEndPoint
 Parameter Name: end-point Parameter Description: The point at which at the articulated or attached part ends. More...
 
DtRwVector myTranslation
 Parameter Name: translation Parameter Description: The current part translation value. More...
 
DtRwVector myMinTranslation
 Parameter Name: min-translation Parameter Description: The minimum part translation value. More...
 
DtRwVector myMaxTranslation
 Parameter Name: max-translation Parameter Description: The maximum part translation value. More...
 
DtRwVector myTranslationRate
 Parameter Name: translation-rate Parameter Description: The current translation rate. More...
 
DtRwVector myMaxTranslationRate
 Parameter Name: translation-rate Parameter Description: The maximum translation rate. More...
 
DtRwReal myPosition
 Parameter Name: position Parameter Description: The current position of the part along a set path where 0 is fully retracted and 1 is fully extended. More...
 
DtRwReal myPositionRate
 Parameter Name: position-rate Parameter Description: The current rate of change of the position of the part along a set path. More...
 
DtRwReal myMaxPositionRate
 Parameter Name: position-rate Parameter Description: The maximum rate of change of the position of the part along a set path. More...
 
DtRwReal myExtension
 Parameter Name: extension Parameter Description: The linear extension of the part in a single direction. More...
 
DtRwReal myExtensionRate
 Parameter Name: extension-rate Parameter Description: The rate of change of the linear extension of the part in a single direction. More...
 
DtRwReal myMaxExtensionRate
 Parameter Name: max-extension-rate Parameter Description: The maximum rate of change of the linear extension of the part in a single direction. More...
 
DtRwReal myAzimuth
 Parameter Name: azimuth Parameter Description: The current or default azimuth. More...
 
DtRwReal myMinAzimuth
 Parameter Name: min-azimuth Parameter Description: The minimum azimuth value. More...
 
DtRwReal myMaxAzimuth
 Parameter Name: max-azimuth Parameter Description: The maximum azimuth value. More...
 
DtRwReal myAzimuthRate
 Parameter Name: azimuth-rate Parameter Description: The current azimuth rate of change. More...
 
DtRwReal myMaxAzimuthRate
 Parameter Name: max-azimuth-rate Parameter Description: The maximum azimuth rate of change. More...
 
DtRwReal myElevation
 Parameter Name: elevation Parameter Description: The current or default elevation. More...
 
DtRwReal myMinElevation
 Parameter Name: min-elevation Parameter Description: The minimum elevation value. More...
 
DtRwReal myMaxElevation
 Parameter Name: max-elevation Parameter Description: The maximum elevation value. More...
 
DtRwReal myElevationRate
 Parameter Name: elevation-rate Parameter Description: The current elevation rate of change. More...
 
DtRwReal myMaxElevationRate
 Parameter Name: max-elevation-rate Parameter Description: The maximum elevation rate of change. More...
 
DtRwReal myRotation
 Parameter Name: rotation Parameter Description: The current or default rotation. More...
 
DtRwReal myMinRotation
 Parameter Name: min-rotation Parameter Description: The minimum rotation value. More...
 
DtRwReal myMaxRotation
 Parameter Name: max-rotation Parameter Description: The maximum rotation value. More...
 
DtRwReal myRotationRate
 Parameter Name: rotation-rate Parameter Description: The maximum rotation rate of change. More...
 
DtRwReal myMaxRotationRate
 Parameter Name: max-rotation-rate Parameter Description: The maximum rotation rate of change. More...
 
DtRwString myAssociatedComponent
 Parameter Name: associated-component Parameter Description: The name of the associated component. More...
 
DtRwString myComment
 Parameter Name: comment Parameter Description: A comment a user can optionally save with the articulated part. More...
 
- Protected Attributes inherited from DtReaderWriter
const DtSymbolString myName
 
DtReaderWriterRegistry myRegistry
 
DtReaderWriterRegistrymyParentRegistry
 
bool myValueSpecified
 
bool myReadOnlyFlag
 
bool myIsVariableReference
 
DtSymbolString myVariableName
 
bool myVariableIsBound
 
DtReaderWritermyDefaultValue
 
aliasContainer myAliases
 Container for the aliases which represent alternative names for the object. More...
 
bool myInvalid
 Set to true if there is a problem reading this item. More...
 
bool myChangedFlag
 Set to true when value changes Set to false when value checked with changedSinceLastChecked. More...
 

Additional Inherited Members

- Public Types inherited from DtRwArtPartState
enum  MergeRule { AllSpecifiedValues, OnlyIfMyValueIsUnspecified, AllSpecifiedValuesExceptRates }
 
- Public Types inherited from DtReaderWriter
typedef std::vector
< DtSymbolString
aliasContainer
 
typedef std::vector
< DtSymbolString >::iterator 
aliasIter
 
typedef std::vector
< DtSymbolString >
::const_iterator 
aliasConstIter
 
typedef std::vector< DtFilename > SearchPaths
 
typedef std::pair
< DtSymbolString, DtString
DtVariableNameType
 
typedef DtReaderWriterFactory *(* DtReaderWriterFactoryCreatorFcn )()
 
- Static Protected Attributes inherited from DtRwArtPartState
static double theDefaultRotationRate
 
static double theDefaultTranslationRate
 
- Static Protected Attributes inherited from DtReaderWriter
static DtString theUnspecifiedValue
 
static DtGetSelfCallbackInfo thePostGetSelfCallback
 
static DtPutSelfCallbackInfo thePrePutSelfCallback
 
static const DtVariableBindingsList theEmptyVariableBindingsList
 
static bool theCreatorFcnSet
 
static DtReaderWriterFactorytheFactory
 
static
DtReaderWriterFactoryCreatorFcn 
theFactoryCreatorFcn
 
static bool thePutIndent
 
static DtOutputStream * theOutputStream
 

Detailed Description

A readable, writable type that holds an articulated part type, attached-to part type, attachment point, and a list of art-part params (DtSimArtPartParamList).

The read/write name is not used for anything in particular, and therefore may be used for file readability.

Constructor & Destructor Documentation

DtSimArtPartDescriptor::DtSimArtPartDescriptor ( )
protected

default constructor

DtSimArtPartDescriptor::DtSimArtPartDescriptor ( const DtString partName,
DtReaderWriterRegistry parentRegistry = NULL 
)

real constructor

DtSimArtPartDescriptor::DtSimArtPartDescriptor ( const DtSymbolString partName,
DtReaderWriterRegistry parentRegistry = NULL 
)
DtSimArtPartDescriptor::DtSimArtPartDescriptor ( const DtString partName,
const DtSimArtPartDescriptor orig,
DtReaderWriterRegistry parentRegistry = NULL 
)

copy constructor

DtSimArtPartDescriptor::DtSimArtPartDescriptor ( const DtSymbolString partName,
const DtSimArtPartDescriptor orig,
DtReaderWriterRegistry parentRegistry = NULL 
)
DtSimArtPartDescriptor::DtSimArtPartDescriptor ( const DtSimArtPartDescriptor orig,
DtReaderWriterRegistry parentRegistry = NULL 
)
virtual DtSimArtPartDescriptor::~DtSimArtPartDescriptor ( )
virtual

Member Function Documentation

DtSimArtPartDescriptor& DtSimArtPartDescriptor::operator= ( const DtSimArtPartDescriptor orig)

assignment

virtual DtSimArtPartDescriptor* DtSimArtPartDescriptor::clone ( const DtString partName,
DtReaderWriterRegistry parentRegistry = NULL 
) const
virtual

Reimplemented from DtRwArtPartState.

virtual DtSimArtPartDescriptor* DtSimArtPartDescriptor::clone ( const DtSymbolString partName,
DtReaderWriterRegistry parentRegistry = NULL 
) const
virtual

Reimplemented from DtRwArtPartState.

virtual void DtSimArtPartDescriptor::setParamList ( const DtSimArtPartParamList paramList)
virtual

Accessor/mutator for myParamList.

virtual const DtSimArtPartParamList& DtSimArtPartDescriptor::paramList ( ) const
virtual
virtual bool DtSimArtPartDescriptor::paramListSpecified ( ) const
virtual
virtual void DtSimArtPartDescriptor::setPartType ( DtArtPartType  partType)
virtual

Accessor/mutator for myPartType.

virtual DtArtPartType DtSimArtPartDescriptor::partType ( ) const
virtual
virtual bool DtSimArtPartDescriptor::partTypeSpecified ( ) const
virtual
virtual void DtSimArtPartDescriptor::setParentPartType ( DtArtPartType  partType)
virtual

Accessor/mutator for myParentPartType.

virtual DtArtPartType DtSimArtPartDescriptor::parentPartType ( ) const
virtual
virtual bool DtSimArtPartDescriptor::parentPartTypeSpecified ( ) const
virtual
virtual DtReal DtSimArtPartDescriptor::azimuthNeutralOffset ( ) const
virtual

Accessor/mutator for myAzimuthNeutralOffset.

virtual void DtSimArtPartDescriptor::setAzimuthNeutralOffset ( DtReal  offset)
virtual
virtual bool DtSimArtPartDescriptor::azimuthNeutralOffsetSpecified ( ) const
virtual
virtual bool DtSimArtPartDescriptor::mergeSpecifiedParameters ( const DtSimArtPartDescriptor other,
MergeRule  rule = AllSpecifiedValues 
)
virtual

Sets local parameter values to that of the other part, as long as the other part has that parameter set.

Returns true if any parameters were updated.

virtual void DtSimArtPartDescriptor::setAllValuesUnspecified ( )
virtual

Sets all values to be unspecified so that they are not saved and simply reloaded from model defaults.

virtual void DtSimArtPartDescriptor::markMatchingFieldsUnspecified ( const DtSimArtPartDescriptor other)
virtual

Sets all values that match the other descriptor to unspecified.

virtual void DtSimArtPartDescriptor::writeOnlySpecifiedParameters ( )
virtual

Marks all articulated part parameters as read only if their value is not specified.

virtual void DtSimArtPartDescriptor::writeOnlyApplicableParameters ( )
virtual

Marks all articulated part parameters as read only if the part has no movement in the specified dimension.

virtual void DtSimArtPartDescriptor::prePutSelf ( )
virtual

Before saving, marks all unspecified parameters as read only so they are not saved in the file, and vice versa.

Reimplemented from DtReaderWriter.

bool DtSimArtPartDescriptor::operator== ( const DtSimArtPartDescriptor rhs) const

Iterates over all items and calls the factory to compare.

bool DtSimArtPartDescriptor::operator!= ( const DtSimArtPartDescriptor rhs) const
inline
virtual bool DtSimArtPartDescriptor::approxEq ( const DtSimArtPartDescriptor rhs,
double  diff 
) const
virtual
static const char* DtSimArtPartDescriptor::theXmlType ( )
static

The type that is used when archiving to an XML stream.

virtual const char* DtSimArtPartDescriptor::xmlType ( ) const
inlinevirtual

Reimplemented from DtReaderWriter.

References DtReaderWriter::theXmlType().

virtual DtString DtSimArtPartDescriptor::partTypeSystemParamName ( ) const
virtual

Not for general use.

Returns the system parameter name for the part type, if it has one. Otherwise returns an empty string.

virtual void DtSimArtPartDescriptor::setPartTypeSystemParamName ( const DtString paramName)
virtual

Not for general use. Overrides the part type system parameter name.

virtual const char* DtSimArtPartDescriptor::readerWriterType ( ) const
protectedvirtual

Used to supply a string type that this reader writer type is.

This can be used in place of dynamic-casting. Also used by the opd editor to determine which type of control to create

Reimplemented from DtReaderWriter.

Member Data Documentation

DtRwInt DtSimArtPartDescriptor::myPartType
protected

Parameter Name: art-part-type Parameter Description: The type of an articulated part.

For the list of available values see the DIS Enumeration Document (Enumeration and Bit Encoded Values for Use with Protocols for DIS Applications).

DtRwInt DtSimArtPartDescriptor::myParentPartType
protected

Parameter Name: parent-part-type
Parameter Description: The type of the object to which an articulated part is attached.

For the list of available values see the DIS Enumeration Document (Enumeration and Bit Encoded Values for Use with Protocols for DIS Applications).
Parameter Default Value: 0

DtSimArtPartParamList DtSimArtPartDescriptor::myParamList
protected

Parameter Name: art-part-param-list
Parameter Description: List of the VR-Link articulated part parameters that are published for this part.

Parameter names (enumerated values) refer to attributes, e.g. X (parameter 1), X rate (parameter 2), azimuth (parameter 11), azimuth rate (parameter 12), and so forth. Parameter Default Value:

DtRwReal DtSimArtPartDescriptor::myAzimuthNeutralOffset
protected

Parameter Name: azimuth-neutral-offset
Parameter Description: Sets and gets the neutral azimuth offset.

This angle represents the difference between the entity's heading and the neutral (or default) orientation of the weapon in the reference (network) representation. The 3D model for this entity is of course assumed to be using the same reference. For instance if you have a gun on the back of a ship which is designed to fire backwards and which is pointing toward the stern when the gun is in the neutral position (in the reference model and the 3D model), the azimuth-neutral-offset should be set to pi. This corresponds with the definition of the neutral position from section I.2.2.3 of the DIS IEEE Std 1278.1-2012.
Parameter Default Value: 0.0
Parameter Units: radians

DtString DtSimArtPartDescriptor::myPartTypeSystemParamNameOverride
protected

Not for general use. Stores an overridden part type system parameter name.


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)