0028832: MMgt_TShared can be replaced by Standard_Transient
[occt.git] / src / StepBasic / StepBasic_DocumentProductAssociation.hxx
CommitLineData
42cf5bc1 1// Created on: 2003-01-28
2// Created by: data exchange team
3// Copyright (c) 2003-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 _StepBasic_DocumentProductAssociation_HeaderFile
17#define _StepBasic_DocumentProductAssociation_HeaderFile
18
19#include <Standard.hxx>
20#include <Standard_Type.hxx>
21
22#include <StepBasic_ProductOrFormationOrDefinition.hxx>
23#include <Standard_Boolean.hxx>
25e59720 24#include <Standard_Transient.hxx>
42cf5bc1 25class TCollection_HAsciiString;
26class StepBasic_Document;
27class StepBasic_ProductOrFormationOrDefinition;
28
29
30class StepBasic_DocumentProductAssociation;
25e59720 31DEFINE_STANDARD_HANDLE(StepBasic_DocumentProductAssociation, Standard_Transient)
42cf5bc1 32
33//! Representation of STEP entity DocumentProductAssociation
25e59720 34class StepBasic_DocumentProductAssociation : public Standard_Transient
42cf5bc1 35{
36
37public:
38
39
40 //! Empty constructor
41 Standard_EXPORT StepBasic_DocumentProductAssociation();
42
43 //! Initialize all fields (own and inherited)
44 Standard_EXPORT void Init (const Handle(TCollection_HAsciiString)& aName, const Standard_Boolean hasDescription, const Handle(TCollection_HAsciiString)& aDescription, const Handle(StepBasic_Document)& aRelatingDocument, const StepBasic_ProductOrFormationOrDefinition& aRelatedProduct);
45
46 //! Returns field Name
47 Standard_EXPORT Handle(TCollection_HAsciiString) Name() const;
48
49 //! Set field Name
50 Standard_EXPORT void SetName (const Handle(TCollection_HAsciiString)& Name);
51
52 //! Returns field Description
53 Standard_EXPORT Handle(TCollection_HAsciiString) Description() const;
54
55 //! Set field Description
56 Standard_EXPORT void SetDescription (const Handle(TCollection_HAsciiString)& Description);
57
58 //! Returns True if optional field Description is defined
59 Standard_EXPORT Standard_Boolean HasDescription() const;
60
61 //! Returns field RelatingDocument
62 Standard_EXPORT Handle(StepBasic_Document) RelatingDocument() const;
63
64 //! Set field RelatingDocument
65 Standard_EXPORT void SetRelatingDocument (const Handle(StepBasic_Document)& RelatingDocument);
66
67 //! Returns field RelatedProduct
68 Standard_EXPORT StepBasic_ProductOrFormationOrDefinition RelatedProduct() const;
69
70 //! Set field RelatedProduct
71 Standard_EXPORT void SetRelatedProduct (const StepBasic_ProductOrFormationOrDefinition& RelatedProduct);
72
73
74
75
25e59720 76 DEFINE_STANDARD_RTTIEXT(StepBasic_DocumentProductAssociation,Standard_Transient)
42cf5bc1 77
78protected:
79
80
81
82
83private:
84
85
86 Handle(TCollection_HAsciiString) theName;
87 Handle(TCollection_HAsciiString) theDescription;
88 Handle(StepBasic_Document) theRelatingDocument;
89 StepBasic_ProductOrFormationOrDefinition theRelatedProduct;
90 Standard_Boolean defDescription;
91
92
93};
94
95
96
97
98
99
100
101#endif // _StepBasic_DocumentProductAssociation_HeaderFile