ML Reference
ml::Vector4Field Class Reference

#include <mlFields.h>

Inheritance diagram for ml::Vector4Field:
ml::Field ml::PlaneField ml::RotationField

Public Member Functions

 Vector4Field ()=default
 Implements the runtime type system interface for this class.
 Vector4Field (const std::string &name)
void setStringValue (const std::string &stringValue) override
 Sets the value of the field to stringValue.
void setVector4Value (const Vector4 &vectorValue)
 Sets the value of the field to vectorValue.
void updateVector4Value (const Vector4 &vectorValue)
void setVectorValue (const Vector4 &vectorValue)
 Sets the value of the field to vectorValue.
std::string getStringValue () const override
const Vector4getVector4Value () const
 Returns the value of the field.
const Vector4getVectorValue () const
 Returns the value of the field.
void setValue (const Vector4 &vectorValue)
 Same as setVector4Value().
void updateValue (const Vector4 &vectorValue)
 Same as updateVector4Value().
const Vector4getValue () const
 Same as getVector4Value().
Public Member Functions inherited from ml::Field
 Field (const std::string &name=std::string())
 Constructor: Creates a field with name.
virtual ~Field ()
 Destructor: Destroys a field and removes all connection to fields and sensors.
FieldContainergetFieldContainer () const
 Returns the field container of the field (which may be NULL).
const std::string & getName () const
 Returns the name of field.
void setName (const std::string &name)
 Sets the name of field. Should be called only once after or while construction.
std::string getFullName () const
bool isOutputOnly () const
 Returns whether this field is marked as a pure output field.
void setOutputOnly (bool outputOnly=true)
 Marks this field as a pure output field that is only changed by its module.
virtual MLint isValidValue ()
void copyCStringValue (char *valueBuffer, MLint bufferSize)
MLint getCStringValueSize ()
 Returns the length of the character string of the string value of the field.
void attachFieldSensor (FieldSensor *sensor)
 Attaches a field sensor sensor of this class instance in both directions.
void detachFieldSensor (FieldSensor *sensor)
 Detaches the field sensor sensor of this class instance in both directions.
void detachFieldSensors ()
 Detaches all field sensors of this class instance in both directions.
void attachField (OutputConnectorField *targetField)
void attachField (BaseField *targetField)
void attachField (SoNodeField *targetField)
void attachField (NotifyField *targetField)
void attachField (Field *targetField, bool propagateValueOnConnect)
void detachField (Field *targetField)
 Disconnects connections between the target field targetField and this instance.
void detachSourceFields ()
 Disconnects all source fields of this instance in both directions.
void detachDestinationFields ()
 Disconnects all target fields of this instance in both directions.
void detachAllFields ()
 Disconnects all source and target fields of this instance in both directions.
size_t getNumDestinationFields ()
 Returns the number of destination fields that could receive notifications or value sets.
FieldgetDestinationField (size_t index)
 Returns the destination field at index. Returns NULL if index is out of range.
size_t getNumSourceFields ()
 Returns the number of source fields that could send notifications or value sets.
FieldgetSourceField (size_t index)
 Returns the source field at index. Returns NULL if index is out of range.
virtual void touch (FieldSensor::Strength strength=FieldSensor::CHANGED)
void enableNotifications (bool flag)
bool areNotificationsEnabled ()

Protected Member Functions

void setValueFromField (const Field &field) override
 Reimplementation from Field that copies the field value more efficiently.
Protected Member Functions inherited from ml::Field
void attachSourceField (Field *field)
void detachSourceField (Field *field)
 Removes a source field from this instance. If not found, then this call does nothing.
void detachFieldInternal (Field *field)
 Only removes the given field from the destination list.

Additional Inherited Members

static void enableNotificationsGlobally (bool flag)
static bool areNotificationsEnabledGlobally ()
static MLintenableNotificationsCounterState ()
Protected Attributes inherited from ml::Field
std::string _name
 The name of this field.
std::vector< FieldSensor * > _sensors
 List of field sensors.
std::vector< Field * > _destinationFields
std::vector< Field * > _sourceFields
FieldContainer_fieldContainer
 The owning field container.
Flags _flags
Static Protected Attributes inherited from ml::Field
static MLint _enableNotifications
 Flag that disables the notification process of field (-sensors) globally.

Detailed Description

Field to encapsulate a vector of four double values.

Definition at line 1080 of file mlFields.h.

Constructor & Destructor Documentation

◆ Vector4Field() [1/2]

ml::Vector4Field::Vector4Field ( )
default

Implements the runtime type system interface for this class.

Default constructor, do not use it.

Referenced by ml::PlaneField::PlaneField(), and ml::RotationField::RotationField().

◆ Vector4Field() [2/2]

ml::Vector4Field::Vector4Field ( const std::string & name)
explicit

Constructor; creates a field with a name to manage a vector of four double values. Default value is (0,0,0,0).

Member Function Documentation

◆ getStringValue()

std::string ml::Vector4Field::getStringValue ( ) const
overridevirtual

Returns the value of the field as a string value. setStringValue must be able to reinterpret this returned string correctly.

Implements ml::Field.

◆ getValue()

const Vector4 & ml::Vector4Field::getValue ( ) const
inline

Same as getVector4Value().

Definition at line 1126 of file mlFields.h.

References getVector4Value().

◆ getVector4Value()

const Vector4 & ml::Vector4Field::getVector4Value ( ) const

Returns the value of the field.

Referenced by getValue(), and getVectorValue().

◆ getVectorValue()

const Vector4 & ml::Vector4Field::getVectorValue ( ) const
inline

Returns the value of the field.

Definition at line 1117 of file mlFields.h.

References getVector4Value().

◆ setStringValue()

void ml::Vector4Field::setStringValue ( const std::string & stringValue)
overridevirtual

Sets the value of the field to stringValue.

Implements ml::Field.

◆ setValue()

void ml::Vector4Field::setValue ( const Vector4 & vectorValue)
inline

Same as setVector4Value().

Definition at line 1120 of file mlFields.h.

References setVector4Value().

◆ setValueFromField()

void ml::Vector4Field::setValueFromField ( const Field & field)
overrideprotectedvirtual

Reimplementation from Field that copies the field value more efficiently.

Reimplemented from ml::Field.

References ml::Field::Field().

◆ setVector4Value()

void ml::Vector4Field::setVector4Value ( const Vector4 & vectorValue)

Sets the value of the field to vectorValue.

Referenced by setValue(), and setVectorValue().

◆ setVectorValue()

void ml::Vector4Field::setVectorValue ( const Vector4 & vectorValue)
inline

Sets the value of the field to vectorValue.

Definition at line 1106 of file mlFields.h.

References setVector4Value().

◆ updateValue()

void ml::Vector4Field::updateValue ( const Vector4 & vectorValue)
inline

Same as updateVector4Value().

Definition at line 1123 of file mlFields.h.

References updateVector4Value().

◆ updateVector4Value()

void ml::Vector4Field::updateVector4Value ( const Vector4 & vectorValue)

Sets the value of the field to vectorValue, but only touches the field if the new value is different from the old value. Note that values must be identical to avoid touching the field!

Referenced by updateValue().


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