NDEVR
API Documentation
DesignParameter

A definition of data that is logically stored in the Model hierarchy. More...

Collaboration diagram for DesignParameter:
[legend]

Public Types

enum  SpecialParameter {
  e_undefined , e_design_property , e_geometry_property , e_model_property ,
  e_vertex_property , e_material_property , e_offset , e_rotation ,
  e_scale , e_surface_area , e_volume , e_length ,
  e_grade , e_h_length , e_v_length , e_geo_orientation ,
  e_model_index , e_vertex_index , e_deployment_bottom , e_parent_path ,
  e_metadata , e_transformed_vertex_metadata , e_uv_mode
}
 Enumerates special built-in parameter types that have predefined semantics within the design hierarchy. More...

Public Member Functions

 DesignParameter ()
 Default constructor.
 DesignParameter (const StringView &column_name, uint04 vertex_index_a, uint04 vertex_index_b)
 Constructs a parameter referencing vertex data by column name and two vertex indices.
 DesignParameter (const StringView &name)
 Constructs a parameter from a raw column name string.
 DesignParameter (Material::UVMode mode)
 Constructs a parameter representing a UV texture mapping mode.
 DesignParameter (NDPG property, uint04 sub_section=Constant< uint04 >::Invalid)
 Constructs a parameter from a geometry property.
 DesignParameter (NDPM property, uint04 sub_section=Constant< uint04 >::Invalid)
 Constructs a parameter from a material property.
 DesignParameter (NDPN property, uint04 sub_section=Constant< uint04 >::Invalid)
 Constructs a parameter from a model property.
 DesignParameter (NDPO property, uint04 sub_section=Constant< uint04 >::Invalid)
 Constructs a parameter from a design object property.
 DesignParameter (SpecialParameter property, const StringView &data_label)
 Constructs a parameter from a special parameter type with a data label.
 DesignParameter (SpecialParameter property, const StringView &data_label, uint04 sub_section)
 Constructs a parameter from a special parameter type with a data label and sub-section.
 DesignParameter (SpecialParameter property, uint04 sub_section=Constant< uint04 >::Invalid)
 Constructs a parameter from a special parameter type.
 DesignParameter (VertexProperty property, uint04 sub_section=Constant< uint04 >::Invalid)
 Constructs a parameter from a vertex property.
TypeInfo defaultType () const
 Returns the default type information for the data represented by this parameter.
ConstPointer< UnitdefaultUnit () const
 Returns the default unit of measurement for this parameter.
TranslatedString displayName () const
 Returns the user-facing display name for this parameter.
bool isIgnored () const
 Checks whether this parameter should be ignored during processing.
bool operator!= (const DesignParameter &params) const
 Inequality comparison operator.
bool operator< (const DesignParameter &params) const
 Less-than comparison operator for ordering.
bool operator== (const DesignParameter &params) const
 Equality comparison operator.
bool operator> (const DesignParameter &params) const
 Greater-than comparison operator for ordering.
void setCustomDisplayName (const TranslatedString &custom_display_name)
 Sets a custom user-facing display name for this parameter.
StringAllocatingView stringID () const
 Returns a string identifier that uniquely represents this parameter.

Public Attributes

StringAllocatingView column_name
 The column or property name used to identify this parameter in storage.
TranslatedString custom_display_name
 An optional user-facing display name override.
String default_value
 The default value for this parameter as a string.
uint04 dim_a = Constant<uint04>::Invalid
 First dimension index (e.g., component or sub-section). Invalid if unused.
uint04 dim_b = Constant<uint04>::Invalid
 Second dimension index. Invalid if unused.
SpecialParameter type
 The special parameter type classification.
ConstPointer< Unitunit
 The unit of measurement associated with this parameter.

Protected Member Functions

void autoSetSpecialParameter ()
 Automatically determines and sets the SpecialParameter type based on the current column name and dimension values.

Detailed Description

A definition of data that is logically stored in the Model hierarchy.


Data could be a property of a Model, Geometry, Vertex, Shape, or Material.

See also
DesignParameterAccumulator, DesignObject, Unit

Definition at line 48 of file DesignParameter.h.

Member Enumeration Documentation

◆ SpecialParameter

Enumerates special built-in parameter types that have predefined semantics within the design hierarchy.


Enumerator
e_undefined 

No specific parameter type assigned.

e_design_property 

A generic design-level property.

e_geometry_property 

A property belonging to a Geometry object.

e_model_property 

A property belonging to a Model object.

e_vertex_property 

A property belonging to a Vertex.

e_material_property 

A property belonging to a Material.

e_offset 

Spatial offset (translation) of a model.

e_rotation 

Rotation of a model.

e_scale 

Scale factor of a model.

e_surface_area 

Computed surface area.

e_volume 

Computed volume.

e_length 

Computed total length.

e_grade 

Computed grade (slope ratio).

e_h_length 

Computed horizontal length component.

e_v_length 

Computed vertical length component.

e_geo_orientation 

Geographic orientation of a model.

e_model_index 

Index of the model within the hierarchy.

e_vertex_index 

Index of a vertex within geometry.

e_deployment_bottom 

Bottom elevation of a deployment.

e_parent_path 

Path string describing the parent chain.

e_metadata 

Arbitrary metadata attached to an object.

e_transformed_vertex_metadata 

Vertex metadata that has been transformed into world space.

e_uv_mode 

UV texture mapping mode.

Definition at line 55 of file DesignParameter.h.

Constructor & Destructor Documentation

◆ DesignParameter() [1/12]

DesignParameter::DesignParameter ( )

Default constructor.

Creates an undefined parameter.

Referenced by operator!=(), operator<(), operator==(), and operator>().

◆ DesignParameter() [2/12]

DesignParameter::DesignParameter ( NDPO property,
uint04 sub_section = Constantuint04 >::Invalid )
explicit

Constructs a parameter from a design object property.

Parameters
[in]propertyThe design object property identifier.
[in]sub_sectionOptional sub-section index within the property.

◆ DesignParameter() [3/12]

DesignParameter::DesignParameter ( NDPG property,
uint04 sub_section = Constantuint04 >::Invalid )
explicit

Constructs a parameter from a geometry property.

Parameters
[in]propertyThe geometry property identifier.
[in]sub_sectionOptional sub-section index within the property.

◆ DesignParameter() [4/12]

DesignParameter::DesignParameter ( NDPM property,
uint04 sub_section = Constantuint04 >::Invalid )
explicit

Constructs a parameter from a material property.

Parameters
[in]propertyThe material property identifier.
[in]sub_sectionOptional sub-section index within the property.

◆ DesignParameter() [5/12]

DesignParameter::DesignParameter ( NDPN property,
uint04 sub_section = Constantuint04 >::Invalid )
explicit

Constructs a parameter from a model property.

Parameters
[in]propertyThe model property identifier.
[in]sub_sectionOptional sub-section index within the property.

◆ DesignParameter() [6/12]

DesignParameter::DesignParameter ( VertexProperty property,
uint04 sub_section = Constantuint04 >::Invalid )
explicit

Constructs a parameter from a vertex property.

Parameters
[in]propertyThe vertex property identifier.
[in]sub_sectionOptional sub-section index within the property.

◆ DesignParameter() [7/12]

DesignParameter::DesignParameter ( SpecialParameter property,
uint04 sub_section = Constantuint04 >::Invalid )
explicit

Constructs a parameter from a special parameter type.

Parameters
[in]propertyThe special parameter type.
[in]sub_sectionOptional sub-section index within the property.

◆ DesignParameter() [8/12]

DesignParameter::DesignParameter ( SpecialParameter property,
const StringView & data_label )

Constructs a parameter from a special parameter type with a data label.

Parameters
[in]propertyThe special parameter type.
[in]data_labelThe string label identifying the data column.

◆ DesignParameter() [9/12]

DesignParameter::DesignParameter ( SpecialParameter property,
const StringView & data_label,
uint04 sub_section )

Constructs a parameter from a special parameter type with a data label and sub-section.

Parameters
[in]propertyThe special parameter type.
[in]data_labelThe string label identifying the data column.
[in]sub_sectionThe sub-section index within the property.

◆ DesignParameter() [10/12]

DesignParameter::DesignParameter ( Material::UVMode mode)

Constructs a parameter representing a UV texture mapping mode.

Parameters
[in]modeThe UV mapping mode to represent.

◆ DesignParameter() [11/12]

DesignParameter::DesignParameter ( const StringView & name)
explicit

Constructs a parameter from a raw column name string.

Parameters
[in]nameThe column name identifying the parameter.

◆ DesignParameter() [12/12]

DesignParameter::DesignParameter ( const StringView & column_name,
uint04 vertex_index_a,
uint04 vertex_index_b )

Constructs a parameter referencing vertex data by column name and two vertex indices.

Parameters
[in]column_nameThe column name identifying the data.
[in]vertex_index_aThe first vertex dimension index.
[in]vertex_index_bThe second vertex dimension index.

References column_name.

Member Function Documentation

◆ defaultType()

TypeInfo DesignParameter::defaultType ( ) const

Returns the default type information for the data represented by this parameter.

Returns
A TypeInfo describing the expected data type.

◆ defaultUnit()

ConstPointer< Unit > DesignParameter::defaultUnit ( ) const

Returns the default unit of measurement for this parameter.

Returns
A const pointer to the default Unit, or null if no default unit applies.

◆ displayName()

TranslatedString DesignParameter::displayName ( ) const

Returns the user-facing display name for this parameter.

Returns
A TranslatedString containing the localized display name.

◆ isIgnored()

bool DesignParameter::isIgnored ( ) const

Checks whether this parameter should be ignored during processing.

Returns
True if this parameter is marked as ignored.

◆ operator!=()

bool DesignParameter::operator!= ( const DesignParameter & params) const

Inequality comparison operator.

Parameters
[in]paramsThe other DesignParameter to compare against.
Returns
True if the parameters are not equal.

References DesignParameter().

◆ operator<()

bool DesignParameter::operator< ( const DesignParameter & params) const

Less-than comparison operator for ordering.

Parameters
[in]paramsThe other DesignParameter to compare against.
Returns
True if this parameter sorts before the other.

References DesignParameter().

◆ operator==()

bool DesignParameter::operator== ( const DesignParameter & params) const

Equality comparison operator.

Parameters
[in]paramsThe other DesignParameter to compare against.
Returns
True if the parameters are equal.

References DesignParameter().

◆ operator>()

bool DesignParameter::operator> ( const DesignParameter & params) const

Greater-than comparison operator for ordering.

Parameters
[in]paramsThe other DesignParameter to compare against.
Returns
True if this parameter sorts after the other.

References DesignParameter().

◆ setCustomDisplayName()

void DesignParameter::setCustomDisplayName ( const TranslatedString & custom_display_name)

Sets a custom user-facing display name for this parameter.

Parameters
[in]custom_display_nameThe translated display name to use.

References custom_display_name.

◆ stringID()

StringAllocatingView DesignParameter::stringID ( ) const

Returns a string identifier that uniquely represents this parameter.

Returns
A StringAllocatingView containing the parameter's string ID.

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