DATAKIT API  V2025.1
catiav5w::FileDescription Class Reference

This class provides several informations about a CatiaV5 File.
It can be used with catiav5w::InitPart and catiav5w::InitProduct functions to specify file properties. More...

Public Types

enum  ProductSourceType { Unknown = 0, Made, Bought }
 

Public Member Functions

void AddBooleanProperty (const Dtk_string &inPropertyName, const Dtk_bool &inValue)
 Adds an additional integer property. More...
 
void AddDoubleProperty (const Dtk_string &inPropertyName, const double &inValue)
 Adds an additional double property. More...
 
void AddIntegerProperty (const Dtk_string &inPropertyName, const Dtk_Int32 &inValue)
 Adds an additional integer property. More...
 
void AddStringProperty (const Dtk_string &inPropertyName, const Dtk_string &inValue)
 Adds an additional integer property. More...
 
 FileDescription ()
 Base constructor. More...
 
const Dtk_stringGetDefinition () const
 Retrieves the file definition - read only -. More...
 
const Dtk_stringGetDescription () const
 Retrieves the file description - read only -. More...
 
const Dtk_PropertiesPtrGetIthAdditionalProperties (const Dtk_Size_t &inPos) const
 Retrieves the file source type - read only -. More...
 
const Dtk_stringGetNomenclature () const
 Retrieves the file nomenclature - read only -. More...
 
Dtk_Size_t GetNumAdditionalProperties () const
 Retrieves the file source type - read only -. More...
 
const catiav5w::MaterialGetPartMaterial () const
 Retrieves the file root material - read only -. More...
 
const Dtk_stringGetRevision () const
 Retrieves the file revision - read only -. More...
 
const ProductSourceTypeGetSourceType () const
 Retrieves the file source type - read only -. More...
 
 SetAsDeprecated ("2023.4", "Use GetPartMaterial method instead.") inline Dtk_Double64 GetPartDensity() const
 Retrieves the Part Density - read only -. More...
 
 SetAsDeprecated ("2023.4", "Use SetPartMaterial with Analysis::Density instead.") inline void SetPartDensity(const Dtk_Double64 inPartDensity)
 Sets the Part Density. More...
 
void SetDefinition (const Dtk_string &inDefinition)
 Sets the file definition. More...
 
void SetDescription (const Dtk_string &inDescription)
 Sets the file description. More...
 
void SetNomenclature (const Dtk_string &inNomenclature)
 Sets the file nomenclature. More...
 
void SetPartMaterial (const catiav5w::Material &inMaterial)
 Sets the file root material. More...
 
void SetRevision (const Dtk_string &inRevision)
 Sets the file revision. More...
 
void SetSourceType (const ProductSourceType &inSourceType)
 Sets the file source type. More...
 
 ~FileDescription ()
 Destructor. More...
 

Protected Attributes

Dtk_tab< Dtk_PropertiesPtr_AdditionalProperties
 
Dtk_string _Definition
 Definition of the CatiaV5 File. More...
 
Dtk_string _Description
 Description of the CatiaV5 File. More...
 
Dtk_string _Nomenclature
 Nomenclature of the CatiaV5 File. More...
 
Dtk_Double64 _PartDensity
 
Dtk_string _Revision
 Revision of the CatiaV5 File. More...
 
ProductSourceType _SourceType
 Source Type of the CatiaV5 File. More...
 
Material m_PartMaterial
 

Detailed Description

This class provides several informations about a CatiaV5 File.
It can be used with catiav5w::InitPart and catiav5w::InitProduct functions to specify file properties.

//...
Desc.SetDefinition(L"MyDef");
Desc.SetDescription(L"MyDesc");
Desc.SetRevision(L"MyRev");
Desc.SetNomenclature(L"MyNom");
Dtk_UUID PartUUID = catiav5w::InitPart( inOutputFile, inReferenceName, Desc);
//...

Member Enumeration Documentation

◆ ProductSourceType

Enumerator
Unknown 
Made 
Bought 
209  {
210  Unknown = 0,
211  Made,
212  Bought
213  };

Constructor & Destructor Documentation

◆ FileDescription()

catiav5w::FileDescription::FileDescription ( )

Base constructor.

236  {
237  _SourceType = Unknown; _PartDensity = -1.0;
238  }

◆ ~FileDescription()

catiav5w::FileDescription::~FileDescription ( )

Destructor.

242  {
243  }

Member Function Documentation

◆ AddBooleanProperty()

void catiav5w::FileDescription::AddBooleanProperty ( const Dtk_string inPropertyName,
const Dtk_bool inValue 
)

Adds an additional integer property.

324  {
325  Dtk_string TmpValue;
326  TmpValue.convert_from_int( inValue );
328  TmpProp->SetTitle( inPropertyName );
329  TmpProp->SetAsBoolean();
330  TmpProp->SetValue( TmpValue );
331 
332  _AdditionalProperties.push_back( TmpProp );
333  }

◆ AddDoubleProperty()

void catiav5w::FileDescription::AddDoubleProperty ( const Dtk_string inPropertyName,
const double &  inValue 
)

Adds an additional double property.

298  {
299  Dtk_string TmpValue = inValue;
301  TmpProp->SetTitle( inPropertyName );
302  TmpProp->SetAsReal();
303  TmpProp->SetValue( TmpValue );
304 
305  _AdditionalProperties.push_back( TmpProp );
306  }

◆ AddIntegerProperty()

void catiav5w::FileDescription::AddIntegerProperty ( const Dtk_string inPropertyName,
const Dtk_Int32 inValue 
)

Adds an additional integer property.

310  {
311  Dtk_string TmpValue;
312  TmpValue.convert_from_int( inValue );
314  TmpProp->SetTitle( inPropertyName );
315  TmpProp->SetAsInteger();
316  TmpProp->SetValue( TmpValue );
317 
318  _AdditionalProperties.push_back( TmpProp );
319  }

◆ AddStringProperty()

void catiav5w::FileDescription::AddStringProperty ( const Dtk_string inPropertyName,
const Dtk_string inValue 
)

Adds an additional integer property.

337  {
339  TmpProp->SetTitle( inPropertyName );
340  TmpProp->SetType( L"STRING" );
341  TmpProp->SetValue( inValue );
342 
343  _AdditionalProperties.push_back( TmpProp );
344  }

◆ GetDefinition()

const Dtk_string& catiav5w::FileDescription::GetDefinition ( ) const

Retrieves the file definition - read only -.

Returns
The file definition
See also
SetDefinition()
365  {
366  return _Definition;
367  }

◆ GetDescription()

const Dtk_string& catiav5w::FileDescription::GetDescription ( ) const

Retrieves the file description - read only -.

Returns
The file description
See also
SetDescription()
381  {
382  return _Description;
383  }

◆ GetIthAdditionalProperties()

const Dtk_PropertiesPtr& catiav5w::FileDescription::GetIthAdditionalProperties ( const Dtk_Size_t inPos) const

Retrieves the file source type - read only -.

Returns
The file source type
See also
SetSourceType()
414  {
415  return _AdditionalProperties[ inPos ];
416  }

◆ GetNomenclature()

const Dtk_string& catiav5w::FileDescription::GetNomenclature ( ) const

Retrieves the file nomenclature - read only -.

Returns
The file nomenclature
See also
SetNomenclature()
373  {
374  return _Nomenclature;
375  }

◆ GetNumAdditionalProperties()

Dtk_Size_t catiav5w::FileDescription::GetNumAdditionalProperties ( ) const

Retrieves the file source type - read only -.

Returns
The file source type
See also
SetSourceType()
406  {
407  return _AdditionalProperties.size();
408  }

◆ GetPartMaterial()

const catiav5w::Material& catiav5w::FileDescription::GetPartMaterial ( ) const

Retrieves the file root material - read only -.

Returns
The file root material
See also
SetPartMaterial()
349  {
350  return m_PartMaterial;
351  }

◆ GetRevision()

const Dtk_string& catiav5w::FileDescription::GetRevision ( ) const

Retrieves the file revision - read only -.

Returns
The file revision
See also
SetRevision()
357  {
358  return _Revision;
359  }

◆ GetSourceType()

const ProductSourceType& catiav5w::FileDescription::GetSourceType ( ) const

Retrieves the file source type - read only -.

Returns
The file source type
See also
SetSourceType()
389  {
390  return _SourceType;
391  }

◆ SetAsDeprecated() [1/2]

catiav5w::FileDescription::SetAsDeprecated ( "2023.4"  ,
"Use GetPartMaterial method instead."   
) const

Retrieves the Part Density - read only -.

Returns
The Part Density
See also
SetPartDensity()
398  {
399  return _PartDensity;
400  }

◆ SetAsDeprecated() [2/2]

catiav5w::FileDescription::SetAsDeprecated ( "2023.4"  ,
"Use SetPartMaterial with Analysis::Density instead."   
) const

Sets the Part Density.

See also
GetPartDensity()
291  {
292  _PartDensity = inPartDensity;
293  }

◆ SetDefinition()

void catiav5w::FileDescription::SetDefinition ( const Dtk_string inDefinition)

Sets the file definition.

See also
GetDefinition()
262  {
263  _Definition = inDefinition;
264  }

◆ SetDescription()

void catiav5w::FileDescription::SetDescription ( const Dtk_string inDescription)

Sets the file description.

See also
GetDescription()
276  {
277  _Description = inDescription;
278  }

◆ SetNomenclature()

void catiav5w::FileDescription::SetNomenclature ( const Dtk_string inNomenclature)

Sets the file nomenclature.

See also
GetNomenclature()
269  {
270  _Nomenclature = inNomenclature;
271  }

◆ SetPartMaterial()

void catiav5w::FileDescription::SetPartMaterial ( const catiav5w::Material inMaterial)

Sets the file root material.

See also
GetPartMaterial()
248  {
249  m_PartMaterial = inMaterial;
250  }

◆ SetRevision()

void catiav5w::FileDescription::SetRevision ( const Dtk_string inRevision)

Sets the file revision.

See also
GetRevision()
255  {
256  _Revision = inRevision;
257  }

◆ SetSourceType()

void catiav5w::FileDescription::SetSourceType ( const ProductSourceType inSourceType)

Sets the file source type.

See also
GetSourceType()
283  {
284  _SourceType = inSourceType;
285  }

Field Documentation

◆ _AdditionalProperties

Dtk_tab< Dtk_PropertiesPtr > catiav5w::FileDescription::_AdditionalProperties
protected

◆ _Definition

Dtk_string catiav5w::FileDescription::_Definition
protected

Definition of the CatiaV5 File.

◆ _Description

Dtk_string catiav5w::FileDescription::_Description
protected

Description of the CatiaV5 File.

◆ _Nomenclature

Dtk_string catiav5w::FileDescription::_Nomenclature
protected

Nomenclature of the CatiaV5 File.

◆ _PartDensity

Dtk_Double64 catiav5w::FileDescription::_PartDensity
protected

◆ _Revision

Dtk_string catiav5w::FileDescription::_Revision
protected

Revision of the CatiaV5 File.

◆ _SourceType

ProductSourceType catiav5w::FileDescription::_SourceType
protected

Source Type of the CatiaV5 File.

◆ m_PartMaterial

Material catiav5w::FileDescription::m_PartMaterial
protected
catiav5w::FileDescription::SetDefinition
void SetDefinition(const Dtk_string &inDefinition)
Sets the file definition.
Definition: catiav5w.hpp:261
catiav5w::FileDescription::_Nomenclature
Dtk_string _Nomenclature
Nomenclature of the CatiaV5 File.
Definition: catiav5w.hpp:222
catiav5w::FileDescription::SetNomenclature
void SetNomenclature(const Dtk_string &inNomenclature)
Sets the file nomenclature.
Definition: catiav5w.hpp:268
catiav5w::FileDescription::_SourceType
ProductSourceType _SourceType
Source Type of the CatiaV5 File.
Definition: catiav5w.hpp:226
Dtk_string
This is a high level string class.
Definition: dtk_string.hpp:58
Dtk_string::convert_from_int
void convert_from_int(const int integer, int force_unsigned_int=0)
affectation operator from a int
Dtk_UUID
Definition: dtk_uuid.hpp:8
catiav5w::FileDescription
This class provides several informations about a CatiaV5 File. It can be used with catiav5w::InitPart...
Definition: catiav5w.hpp:205
catiav5w::FileDescription::Unknown
@ Unknown
Definition: catiav5w.hpp:210
catiav5w::FileDescription::_PartDensity
Dtk_Double64 _PartDensity
Definition: catiav5w.hpp:230
catiav5w::FileDescription::SetRevision
void SetRevision(const Dtk_string &inRevision)
Sets the file revision.
Definition: catiav5w.hpp:254
catiav5w::inReferenceName
const Dtk_string & inReferenceName
Definition: catiav5w.hpp:456
catiav5w::InitPart
Dtk_ErrorStatus InitPart(const Dtk_string &inOutputFile, const Dtk_string &inReferenceName, Dtk_UUID &outPartUUID, const catiav5w::FileDescription &inFileDescription=catiav5w::FileDescription())
Initialize the part
catiav5w::FileDescription::_Definition
Dtk_string _Definition
Definition of the CatiaV5 File.
Definition: catiav5w.hpp:220
catiav5w::FileDescription::m_PartMaterial
Material m_PartMaterial
Definition: catiav5w.hpp:216
Dtk_Properties::create
static Dtk_PropertiesPtr create()
catiav5w::FileDescription::SetSourceType
void SetSourceType(const ProductSourceType &inSourceType)
Sets the file source type.
Definition: catiav5w.hpp:282
catiav5w::FileDescription::Bought
@ Bought
Definition: catiav5w.hpp:212
Dtk_SmartPtr
Definition: util_ptr_dtk.hpp:37
catiav5w::FileDescription::_Revision
Dtk_string _Revision
Revision of the CatiaV5 File.
Definition: catiav5w.hpp:218
catiav5w::FileDescription::Made
@ Made
Definition: catiav5w.hpp:211
catiav5w::FileDescription::_AdditionalProperties
Dtk_tab< Dtk_PropertiesPtr > _AdditionalProperties
Definition: catiav5w.hpp:228
catiav5w::FileDescription::SetDescription
void SetDescription(const Dtk_string &inDescription)
Sets the file description.
Definition: catiav5w.hpp:275
catiav5w::FileDescription::_Description
Dtk_string _Description
Description of the CatiaV5 File.
Definition: catiav5w.hpp:224