0026936: Drawbacks of inlining in new type system in OCCT 7.0 -- automatic
[occt.git] / src / StepRepr / StepRepr_SpecifiedHigherUsageOccurrence.hxx
CommitLineData
42cf5bc1 1// Created on: 2000-07-03
2// Created by: Andrey BETENEV
3// Copyright (c) 2000-2014 OPEN CASCADE SAS
4//
5// This file is part of Open CASCADE Technology software library.
6//
7// This library is free software; you can redistribute it and/or modify it under
8// the terms of the GNU Lesser General Public License version 2.1 as published
9// by the Free Software Foundation, with special exception defined in the file
10// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11// distribution for complete text of the license and disclaimer of any warranty.
12//
13// Alternatively, this file may be used under the terms of Open CASCADE
14// commercial license or contractual agreement.
15
16#ifndef _StepRepr_SpecifiedHigherUsageOccurrence_HeaderFile
17#define _StepRepr_SpecifiedHigherUsageOccurrence_HeaderFile
18
19#include <Standard.hxx>
20#include <Standard_Type.hxx>
21
22#include <StepRepr_AssemblyComponentUsage.hxx>
23#include <Standard_Boolean.hxx>
24class StepRepr_AssemblyComponentUsage;
25class StepRepr_NextAssemblyUsageOccurrence;
26class TCollection_HAsciiString;
27class StepBasic_ProductDefinition;
28
29
30class StepRepr_SpecifiedHigherUsageOccurrence;
31DEFINE_STANDARD_HANDLE(StepRepr_SpecifiedHigherUsageOccurrence, StepRepr_AssemblyComponentUsage)
32
33//! Representation of STEP entity SpecifiedHigherUsageOccurrence
34class StepRepr_SpecifiedHigherUsageOccurrence : public StepRepr_AssemblyComponentUsage
35{
36
37public:
38
39
40 //! Empty constructor
41 Standard_EXPORT StepRepr_SpecifiedHigherUsageOccurrence();
42
43 //! Initialize all fields (own and inherited)
44 Standard_EXPORT void Init (const Handle(TCollection_HAsciiString)& aProductDefinitionRelationship_Id, const Handle(TCollection_HAsciiString)& aProductDefinitionRelationship_Name, const Standard_Boolean hasProductDefinitionRelationship_Description, const Handle(TCollection_HAsciiString)& aProductDefinitionRelationship_Description, const Handle(StepBasic_ProductDefinition)& aProductDefinitionRelationship_RelatingProductDefinition, const Handle(StepBasic_ProductDefinition)& aProductDefinitionRelationship_RelatedProductDefinition, const Standard_Boolean hasAssemblyComponentUsage_ReferenceDesignator, const Handle(TCollection_HAsciiString)& aAssemblyComponentUsage_ReferenceDesignator, const Handle(StepRepr_AssemblyComponentUsage)& aUpperUsage, const Handle(StepRepr_NextAssemblyUsageOccurrence)& aNextUsage);
45
46 //! Returns field UpperUsage
47 Standard_EXPORT Handle(StepRepr_AssemblyComponentUsage) UpperUsage() const;
48
49 //! Set field UpperUsage
50 Standard_EXPORT void SetUpperUsage (const Handle(StepRepr_AssemblyComponentUsage)& UpperUsage);
51
52 //! Returns field NextUsage
53 Standard_EXPORT Handle(StepRepr_NextAssemblyUsageOccurrence) NextUsage() const;
54
55 //! Set field NextUsage
56 Standard_EXPORT void SetNextUsage (const Handle(StepRepr_NextAssemblyUsageOccurrence)& NextUsage);
57
58
59
60
92efcf78 61 DEFINE_STANDARD_RTTIEXT(StepRepr_SpecifiedHigherUsageOccurrence,StepRepr_AssemblyComponentUsage)
42cf5bc1 62
63protected:
64
65
66
67
68private:
69
70
71 Handle(StepRepr_AssemblyComponentUsage) theUpperUsage;
72 Handle(StepRepr_NextAssemblyUsageOccurrence) theNextUsage;
73
74
75};
76
77
78
79
80
81
82
83#endif // _StepRepr_SpecifiedHigherUsageOccurrence_HeaderFile