// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _IGESDefs_GenericData_HeaderFile #define _IGESDefs_GenericData_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_IGESDefs_GenericData_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Handle_TCollection_HAsciiString_HeaderFile #include #endif #ifndef _Handle_TColStd_HArray1OfInteger_HeaderFile #include #endif #ifndef _Handle_TColStd_HArray1OfTransient_HeaderFile #include #endif #ifndef _IGESData_IGESEntity_HeaderFile #include #endif #ifndef _Handle_Standard_Transient_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _Handle_IGESData_IGESEntity_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif class TCollection_HAsciiString; class TColStd_HArray1OfInteger; class TColStd_HArray1OfTransient; class Standard_DimensionMismatch; class Standard_OutOfRange; class Standard_NullObject; class Standard_Transient; class IGESData_IGESEntity; //! defines IGES Generic Data, Type <406> Form <27>
//! in package IGESDefs
//! Used to communicate information defined by the system
//! operator while creating the model. The information is
//! system specific and does not map into one of the
//! predefined properties or associativities. Properties
//! and property values can be defined by multiple
//! instances of this property.
class IGESDefs_GenericData : public IGESData_IGESEntity { public: Standard_EXPORT IGESDefs_GenericData(); //! This method is used to set the fields of the class
//! GenericData
//! - nbPropVal : Number of property values
//! - aName : Property Name
//! - allTypes : Property Types
//! - allValues : Property Values
Standard_EXPORT void Init(const Standard_Integer nbPropVal,const Handle(TCollection_HAsciiString)& aName,const Handle(TColStd_HArray1OfInteger)& allTypes,const Handle(TColStd_HArray1OfTransient)& allValues) ; //! returns the number of property values
Standard_EXPORT Standard_Integer NbPropertyValues() const; //! returns property name
Standard_EXPORT Handle_TCollection_HAsciiString Name() const; //! returns the number of TYPE/VALUE pairs
Standard_EXPORT Standard_Integer NbTypeValuePairs() const; //! returns the Index'th property value data type
//! raises exception if Index <= 0 or Index > NbTypeValuePairs()
Standard_EXPORT Standard_Integer Type(const Standard_Integer Index) const; //! HArray1OfInteger (length 1), HArray1OfReal (length 1) for
//! Integer, Real, Boolean (= Integer 0/1),
//! HAsciiString for String (the value itself),
//! IGESEntity for Entity (the value itself)
Standard_EXPORT Handle_Standard_Transient Value(const Standard_Integer Index) const; //! Returns Attribute Value as an Integer
//! Error if Index out of Range, or not an Integer
Standard_EXPORT Standard_Integer ValueAsInteger(const Standard_Integer ValueNum) const; //! Returns Attribute Value as a Real
//! Error if Index out of Range, or not a Real
Standard_EXPORT Standard_Real ValueAsReal(const Standard_Integer ValueNum) const; //! Returns Attribute Value as an Integer
Standard_EXPORT Handle_TCollection_HAsciiString ValueAsString(const Standard_Integer ValueNum) const; //! Returns Attribute Value as an Entity
//! Error if Index out of Range, or not a Entity
Standard_EXPORT Handle_IGESData_IGESEntity ValueAsEntity(const Standard_Integer ValueNum) const; //! Returns Attribute Value as a Boolean
//! Error if Index out of Range, or not a Logical
Standard_EXPORT Standard_Boolean ValueAsLogical(const Standard_Integer ValueNum) const; DEFINE_STANDARD_RTTI(IGESDefs_GenericData) protected: private: Standard_Integer theNbPropertyValues; Handle_TCollection_HAsciiString theName; Handle_TColStd_HArray1OfInteger theTypes; Handle_TColStd_HArray1OfTransient theValues; }; // other Inline functions and methods (like "C++: function call" methods) #endif