summaryrefslogtreecommitdiff
path: root/inc/APIHeaderSection_MakeHeader.hxx
blob: c599ad2b0d6c60c63e1a995539d02c855e783571 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
// 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 _APIHeaderSection_MakeHeader_HeaderFile
#define _APIHeaderSection_MakeHeader_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _Handle_HeaderSection_FileName_HeaderFile
#include <Handle_HeaderSection_FileName.hxx>
#endif
#ifndef _Handle_HeaderSection_FileSchema_HeaderFile
#include <Handle_HeaderSection_FileSchema.hxx>
#endif
#ifndef _Handle_HeaderSection_FileDescription_HeaderFile
#include <Handle_HeaderSection_FileDescription.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Handle_StepData_StepModel_HeaderFile
#include <Handle_StepData_StepModel.hxx>
#endif
#ifndef _Standard_CString_HeaderFile
#include <Standard_CString.hxx>
#endif
#ifndef _Handle_Interface_Protocol_HeaderFile
#include <Handle_Interface_Protocol.hxx>
#endif
#ifndef _Handle_TCollection_HAsciiString_HeaderFile
#include <Handle_TCollection_HAsciiString.hxx>
#endif
#ifndef _Handle_Interface_HArray1OfHAsciiString_HeaderFile
#include <Handle_Interface_HArray1OfHAsciiString.hxx>
#endif
class HeaderSection_FileName;
class HeaderSection_FileSchema;
class HeaderSection_FileDescription;
class StepData_StepModel;
class Interface_Protocol;
class TCollection_HAsciiString;
class Interface_HArray1OfHAsciiString;


//! This class allows to consult and prepare/edit  data stored in <br>
//!           a Step Model  Header <br>
class APIHeaderSection_MakeHeader  {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  //! Prepares a new MakeHeader from scratch <br>
  Standard_EXPORT   APIHeaderSection_MakeHeader(const Standard_Integer shapetype = 0);
  //! Prepares a MakeHeader from the content of a StepModel <br>
//!           See IsDone to know if the Header is well defined <br>
  Standard_EXPORT   APIHeaderSection_MakeHeader(const Handle(StepData_StepModel)& model);
  //! Cancels the former definition and gives a FileName <br>
//!           To be used when a Model has no well defined Header <br>
  Standard_EXPORT     void Init(const Standard_CString nameval) ;
  //! Returns True if all data have been defined (see also <br>
//!           HasFn, HasFs, HasFd) <br>
  Standard_EXPORT     Standard_Boolean IsDone() const;
  //! Creates an empty header for a new <br>
//!           STEP model and allows the header fields to be completed. <br>
  Standard_EXPORT     void Apply(const Handle(StepData_StepModel)& model) const;
  //! Builds a Header, creates a new StepModel, then applies the <br>
//!           Header to the StepModel <br>
//!           The Schema Name is taken from the Protocol (if it inherits <br>
//!           from StepData, else it is left in blanks) <br>
  Standard_EXPORT     Handle_StepData_StepModel NewModel(const Handle(Interface_Protocol)& protocol) const;
  //! Checks whether there is a <br>
//!          file_name entity. Returns True if there is one. <br>
  Standard_EXPORT     Standard_Boolean HasFn() const;
  //! Returns the file_name entity. <br>
//!          Returns an empty entity if the file_name entity is not initialized. <br>
  Standard_EXPORT     Handle_HeaderSection_FileName FnValue() const;
  
  Standard_EXPORT     void SetName(const Handle(TCollection_HAsciiString)& aName) ;
  //! Returns the name attribute for the file_name entity. <br>
  Standard_EXPORT     Handle_TCollection_HAsciiString Name() const;
  
  Standard_EXPORT     void SetTimeStamp(const Handle(TCollection_HAsciiString)& aTimeStamp) ;
  //! Returns the value of the time_stamp attribute for the file_name entity. <br>
  Standard_EXPORT     Handle_TCollection_HAsciiString TimeStamp() const;
  
  Standard_EXPORT     void SetAuthor(const Handle(Interface_HArray1OfHAsciiString)& aAuthor) ;
  
  Standard_EXPORT     void SetAuthorValue(const Standard_Integer num,const Handle(TCollection_HAsciiString)& aAuthor) ;
  
  Standard_EXPORT     Handle_Interface_HArray1OfHAsciiString Author() const;
  //! Returns the value of the name attribute for the file_name entity. <br>
  Standard_EXPORT     Handle_TCollection_HAsciiString AuthorValue(const Standard_Integer num) const;
  //! Returns the number of values for the author attribute in the file_name entity. <br>
  Standard_EXPORT     Standard_Integer NbAuthor() const;
  
  Standard_EXPORT     void SetOrganization(const Handle(Interface_HArray1OfHAsciiString)& aOrganization) ;
  
  Standard_EXPORT     void SetOrganizationValue(const Standard_Integer num,const Handle(TCollection_HAsciiString)& aOrganization) ;
  
  Standard_EXPORT     Handle_Interface_HArray1OfHAsciiString Organization() const;
  //! Returns the value of attribute <br>
//! organization for the file_name entity. <br>
  Standard_EXPORT     Handle_TCollection_HAsciiString OrganizationValue(const Standard_Integer num) const;
  //! Returns the number of values for <br>
//! the organization attribute in the file_name entity. <br>
  Standard_EXPORT     Standard_Integer NbOrganization() const;
  
  Standard_EXPORT     void SetPreprocessorVersion(const Handle(TCollection_HAsciiString)& aPreprocessorVersion) ;
  //! Returns the name of the preprocessor_version for the file_name entity. <br>
  Standard_EXPORT     Handle_TCollection_HAsciiString PreprocessorVersion() const;
  
  Standard_EXPORT     void SetOriginatingSystem(const Handle(TCollection_HAsciiString)& aOriginatingSystem) ;
  
  Standard_EXPORT     Handle_TCollection_HAsciiString OriginatingSystem() const;
  
  Standard_EXPORT     void SetAuthorisation(const Handle(TCollection_HAsciiString)& aAuthorisation) ;
  //! Returns the value of the authorization attribute for the file_name entity. <br>
  Standard_EXPORT     Handle_TCollection_HAsciiString Authorisation() const;
  //! Checks whether there is a file_schema entity. Returns True if there is one. <br>
  Standard_EXPORT     Standard_Boolean HasFs() const;
  //! Returns the file_schema entity. Returns an empty entity if the file_schema entity is not initialized. <br>
  Standard_EXPORT     Handle_HeaderSection_FileSchema FsValue() const;
  
  Standard_EXPORT     void SetSchemaIdentifiers(const Handle(Interface_HArray1OfHAsciiString)& aSchemaIdentifiers) ;
  
  Standard_EXPORT     void SetSchemaIdentifiersValue(const Standard_Integer num,const Handle(TCollection_HAsciiString)& aSchemaIdentifier) ;
  
  Standard_EXPORT     Handle_Interface_HArray1OfHAsciiString SchemaIdentifiers() const;
  //! Returns the value of the schema_identifier attribute for the file_schema entity. <br>
  Standard_EXPORT     Handle_TCollection_HAsciiString SchemaIdentifiersValue(const Standard_Integer num) const;
  //! Returns the number of values for the schema_identifier attribute in the file_schema entity. <br>
  Standard_EXPORT     Standard_Integer NbSchemaIdentifiers() const;
  //! Add a subname of schema (if not yet in the list) <br>
  Standard_EXPORT     void AddSchemaIdentifier(const Handle(TCollection_HAsciiString)& aSchemaIdentifier) ;
  //! Checks whether there is a file_description entity. Returns True if there is one. <br>
  Standard_EXPORT     Standard_Boolean HasFd() const;
  //! Returns the file_description <br>
//! entity. Returns an empty entity if the file_description entity is not initialized. <br>
  Standard_EXPORT     Handle_HeaderSection_FileDescription FdValue() const;
  
  Standard_EXPORT     void SetDescription(const Handle(Interface_HArray1OfHAsciiString)& aDescription) ;
  
  Standard_EXPORT     void SetDescriptionValue(const Standard_Integer num,const Handle(TCollection_HAsciiString)& aDescription) ;
  
  Standard_EXPORT     Handle_Interface_HArray1OfHAsciiString Description() const;
  //! Returns the value of the <br>
//! description attribute for the file_description entity. <br>
  Standard_EXPORT     Handle_TCollection_HAsciiString DescriptionValue(const Standard_Integer num) const;
  //! Returns the number of values for <br>
//! the file_description entity in the STEP file header. <br>
  Standard_EXPORT     Standard_Integer NbDescription() const;
  
  Standard_EXPORT     void SetImplementationLevel(const Handle(TCollection_HAsciiString)& aImplementationLevel) ;
  //! Returns the value of the <br>
//! implementation_level attribute for the file_description entity. <br>
  Standard_EXPORT     Handle_TCollection_HAsciiString ImplementationLevel() const;





protected:





private:



Standard_Boolean done;
Handle_HeaderSection_FileName fn;
Handle_HeaderSection_FileSchema fs;
Handle_HeaderSection_FileDescription fd;


};





// other Inline functions and methods (like "C++: function call" methods)


#endif