Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-07-02 08:34:28

0001 // Created on: 2015-07-16
0002 // Created by: Irina KRYLOVA
0003 // Copyright (c) 2015 OPEN CASCADE SAS
0004 //
0005 // This file is part of Open CASCADE Technology software library.
0006 //
0007 // This library is free software; you can redistribute it and/or modify it under
0008 // the terms of the GNU Lesser General Public License version 2.1 as published
0009 // by the Free Software Foundation, with special exception defined in the file
0010 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0011 // distribution for complete text of the license and disclaimer of any warranty.
0012 //
0013 // Alternatively, this file may be used under the terms of Open CASCADE
0014 // commercial license or contractual agreement.
0015 
0016 #ifndef _StepDimTol_DatumSystem_HeaderFile
0017 #define _StepDimTol_DatumSystem_HeaderFile
0018 
0019 #include <Standard.hxx>
0020 
0021 #include <Standard_Integer.hxx>
0022 #include <StepDimTol_HArray1OfDatumReferenceCompartment.hxx>
0023 
0024 class StepDimTol_DatumSystem;
0025 DEFINE_STANDARD_HANDLE(StepDimTol_DatumSystem, StepRepr_ShapeAspect)
0026 
0027 //! Representation of STEP entity DatumSystem
0028 class StepDimTol_DatumSystem : public StepRepr_ShapeAspect
0029 {
0030 
0031 public:
0032   //! Empty constructor
0033   Standard_EXPORT StepDimTol_DatumSystem();
0034 
0035   //! Initialize all fields (own and inherited)
0036   Standard_EXPORT void Init(
0037     const Handle(TCollection_HAsciiString)&                      theName,
0038     const Handle(TCollection_HAsciiString)&                      theDescription,
0039     const Handle(StepRepr_ProductDefinitionShape)&               theOfShape,
0040     const StepData_Logical                                       theProductDefinitional,
0041     const Handle(StepDimTol_HArray1OfDatumReferenceCompartment)& theConstituents);
0042 
0043   //! Returns field Constituents
0044   inline Handle(StepDimTol_HArray1OfDatumReferenceCompartment) Constituents()
0045   {
0046     return myConstituents;
0047   }
0048 
0049   //! Set field Constituents
0050   inline void SetConstituents(
0051     const Handle(StepDimTol_HArray1OfDatumReferenceCompartment)& theConstituents)
0052   {
0053     myConstituents = theConstituents;
0054   }
0055 
0056   //! Returns number of Constituents
0057   inline Standard_Integer NbConstituents() const
0058   {
0059     return (myConstituents.IsNull() ? 0 : myConstituents->Length());
0060   }
0061 
0062   //! Returns Constituents with the given number
0063   inline Handle(StepDimTol_DatumReferenceCompartment) ConstituentsValue(
0064     const Standard_Integer num) const
0065   {
0066     return myConstituents->Value(num);
0067   }
0068 
0069   //! Sets Constituents with given number
0070   inline void ConstituentsValue(const Standard_Integer                              num,
0071                                 const Handle(StepDimTol_DatumReferenceCompartment)& theItem)
0072   {
0073     myConstituents->SetValue(num, theItem);
0074   }
0075 
0076   DEFINE_STANDARD_RTTIEXT(StepDimTol_DatumSystem, StepRepr_ShapeAspect)
0077 
0078 private:
0079   Handle(StepDimTol_HArray1OfDatumReferenceCompartment) myConstituents;
0080 };
0081 #endif // _StepDimTol_DatumSystem_HeaderFile