1 // Created on: 1993-01-09 2 // Created by: CKY / Contract Toubro-Larsen ( TCD ) 3 // Copyright (c) 1993-1999 Matra Datavision 4 // Copyright (c) 1999-2014 OPEN CASCADE SAS 5 // 6 // This file is part of Open CASCADE Technology software library. 7 // 8 // This library is free software; you can redistribute it and/or modify it under 9 // the terms of the GNU Lesser General Public License version 2.1 as published 10 // by the Free Software Foundation, with special exception defined in the file 11 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT 12 // distribution for complete text of the license and disclaimer of any warranty. 13 // 14 // Alternatively, this file may be used under the terms of Open CASCADE 15 // commercial license or contractual agreement. 16 17 #ifndef _IGESGraph_NominalSize_HeaderFile 18 #define _IGESGraph_NominalSize_HeaderFile 19 20 #include <Standard.hxx> 21 #include <Standard_Type.hxx> 22 23 #include <Standard_Integer.hxx> 24 #include <Standard_Real.hxx> 25 #include <IGESData_IGESEntity.hxx> 26 #include <Standard_Boolean.hxx> 27 class TCollection_HAsciiString; 28 29 30 class IGESGraph_NominalSize; 31 DEFINE_STANDARD_HANDLE(IGESGraph_NominalSize, IGESData_IGESEntity) 32 33 //! defines IGESNominalSize, Type <406> Form <13> 34 //! in package IGESGraph 35 //! 36 //! Specifies a value, a name, and optionally a 37 //! reference to an engineering standard 38 class IGESGraph_NominalSize : public IGESData_IGESEntity 39 { 40 41 public: 42 43 44 Standard_EXPORT IGESGraph_NominalSize(); 45 46 //! This method is used to set the fields of the class 47 //! NominalSize 48 //! - nbProps : Number of property values (2 or 3) 49 //! - aNominalSizeValue : NominalSize Value 50 //! - aNominalSizeName : NominalSize Name 51 //! - aStandardName : Name of relevant engineering standard 52 Standard_EXPORT void Init (const Standard_Integer nbProps, const Standard_Real aNominalSizeValue, const Handle(TCollection_HAsciiString)& aNominalSizeName, const Handle(TCollection_HAsciiString)& aStandardName); 53 54 //! returns the number of property values in <me> 55 Standard_EXPORT Standard_Integer NbPropertyValues() const; 56 57 //! returns the value of <me> 58 Standard_EXPORT Standard_Real NominalSizeValue() const; 59 60 //! returns the name of <me> 61 Standard_EXPORT Handle(TCollection_HAsciiString) NominalSizeName() const; 62 63 //! returns True if an engineering Standard is defined for <me> 64 //! else, returns False 65 Standard_EXPORT Standard_Boolean HasStandardName() const; 66 67 //! returns the name of the relevant engineering standard of <me> 68 Standard_EXPORT Handle(TCollection_HAsciiString) StandardName() const; 69 70 71 72 73 DEFINE_STANDARD_RTTIEXT(IGESGraph_NominalSize,IGESData_IGESEntity) 74 75 protected: 76 77 78 79 80 private: 81 82 83 Standard_Integer theNbPropertyValues; 84 Standard_Real theNominalSizeValue; 85 Handle(TCollection_HAsciiString) theNominalSizeName; 86 Handle(TCollection_HAsciiString) theStandardName; 87 88 89 }; 90 91 92 93 94 95 96 97 #endif // _IGESGraph_NominalSize_HeaderFile 98