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
|
// File generated by CPPExt (Transient)
//
//
// Copyright (C) 1991 - 2000 by
// Matra Datavision SA. All rights reserved.
//
// Copyright (C) 2001 - 2004 by
// Open CASCADE SA. All rights reserved.
//
// This file is part of the Open CASCADE Technology software.
//
// This software may be distributed and/or modified under the terms and
// conditions of the Open CASCADE Public License as defined by Open CASCADE SA
// and appearing in the file LICENSE included in the packaging of this file.
//
// This software is distributed on an "AS IS" basis, without warranty of any
// kind, and Open CASCADE SA hereby disclaims all such warranties,
// including without limitation, any warranties of merchantability, fitness
// for a particular purpose or non-infringement. Please see the License for
// the specific terms and conditions governing rights and limitations under the
// License.
#ifndef _StepData_StepModel_HeaderFile
#define _StepData_StepModel_HeaderFile
#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Handle_StepData_StepModel_HeaderFile
#include <Handle_StepData_StepModel.hxx>
#endif
#ifndef _Interface_EntityList_HeaderFile
#include <Interface_EntityList.hxx>
#endif
#ifndef _Interface_DataMapOfTransientInteger_HeaderFile
#include <Interface_DataMapOfTransientInteger.hxx>
#endif
#ifndef _Interface_InterfaceModel_HeaderFile
#include <Interface_InterfaceModel.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Handle_Standard_Transient_HeaderFile
#include <Handle_Standard_Transient.hxx>
#endif
#ifndef _Handle_Interface_InterfaceModel_HeaderFile
#include <Handle_Interface_InterfaceModel.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _Handle_Standard_Type_HeaderFile
#include <Handle_Standard_Type.hxx>
#endif
#ifndef _Handle_Interface_Check_HeaderFile
#include <Handle_Interface_Check.hxx>
#endif
#ifndef _Standard_OStream_HeaderFile
#include <Standard_OStream.hxx>
#endif
#ifndef _Handle_TCollection_HAsciiString_HeaderFile
#include <Handle_TCollection_HAsciiString.hxx>
#endif
class Standard_NoSuchObject;
class Standard_Transient;
class Interface_InterfaceModel;
class Interface_EntityIterator;
class Standard_Type;
class Interface_Check;
class TCollection_HAsciiString;
//! Gives access to <br>
//! - entities in a STEP file, <br>
//! - the STEP file header. <br>
class StepData_StepModel : public Interface_InterfaceModel {
public:
// Methods PUBLIC
//
//! Creates an empty STEP model with an empty header. <br>
Standard_EXPORT StepData_StepModel();
//! The standard reservation is completed for the map (id-num) <br>
Standard_EXPORT virtual void Reservate(const Standard_Integer nbent) ;
//! returns entity given its rank. <br>
//! Same as InterfaceEntity, but with a shorter name <br>
Standard_EXPORT Handle_Standard_Transient Entity(const Standard_Integer num) const;
//! gets header from another Model (uses Header Protocol) <br>
Standard_EXPORT void GetFromAnother(const Handle(Interface_InterfaceModel)& other) ;
//! Returns a New Empty Model, same type as <me>, i.e. StepModel <br>
Standard_EXPORT Handle_Interface_InterfaceModel NewEmptyModel() const;
//! returns Header entities under the form of an iterator <br>
Standard_EXPORT Interface_EntityIterator Header() const;
//! says if a Header entity has a specifed type <br>
Standard_EXPORT Standard_Boolean HasHeaderEntity(const Handle(Standard_Type)& atype) const;
//! Returns Header entity with specified type, if there is <br>
Standard_EXPORT Handle_Standard_Transient HeaderEntity(const Handle(Standard_Type)& atype) const;
//! Clears the Header <br>
Standard_EXPORT void ClearHeader() ;
//! Adds an Entity to the Header <br>
Standard_EXPORT void AddHeaderEntity(const Handle(Standard_Transient)& ent) ;
//! Specific Check, checks Header Items with HeaderProtocol <br>
Standard_EXPORT virtual void VerifyCheck(Handle(Interface_Check)& ach) const;
//! Dumps the Header, with the Header Protocol of StepData. <br>
//! If the Header Protocol is not defined, for each Header Entity, <br>
//! prints its Type. Else sends the Header under the form of <br>
//! HEADER Section of an Ascii Step File <br>
//! <level> is not used because Header is not so big <br>
Standard_EXPORT void DumpHeader(Standard_OStream& S,const Standard_Integer level = 0) const;
//! erases specific labels, i.e. clears the map (entity-ident) <br>
Standard_EXPORT void ClearLabels() ;
//! Attaches an ident to an entity to produce a label <br>
//! (does nothing if <ent> is not in <me>) <br>
Standard_EXPORT void SetIdentLabel(const Handle(Standard_Transient)& ent,const Standard_Integer ident) ;
//! returns the label ident attached to an entity, 0 if not in me <br>
Standard_EXPORT Standard_Integer IdentLabel(const Handle(Standard_Transient)& ent) const;
//! Prints label specific to STEP norm for a given entity, i.e. <br>
//! if a LabelIdent has been recorded, its value with '#', else <br>
//! the number in the model with '#' and between () <br>
Standard_EXPORT void PrintLabel(const Handle(Standard_Transient)& ent,Standard_OStream& S) const;
//! Returns a string with the label attached to a given entity, <br>
//! same form as for PrintLabel <br>
Standard_EXPORT Handle_TCollection_HAsciiString StringLabel(const Handle(Standard_Transient)& ent) const;
//Standard_EXPORT ~StepData_StepModel();
// Type management
//
Standard_EXPORT const Handle(Standard_Type)& DynamicType() const;
//Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)&) const;
protected:
// Methods PROTECTED
//
// Fields PROTECTED
//
private:
// Methods PRIVATE
//
// Fields PRIVATE
//
Interface_EntityList theheader;
Interface_DataMapOfTransientInteger theidnums;
};
// other Inline functions and methods (like "C++: function call" methods)
//
#endif
|