|
|
|||
File indexing completed on 2026-09-25 09:21:21
0001 // Created on: 1992-02-11 0002 // Created by: Christian CAILLET 0003 // Copyright (c) 1992-1999 Matra Datavision 0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS 0005 // 0006 // This file is part of Open CASCADE Technology software library. 0007 // 0008 // This library is free software; you can redistribute it and/or modify it under 0009 // the terms of the GNU Lesser General Public License version 2.1 as published 0010 // by the Free Software Foundation, with special exception defined in the file 0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT 0012 // distribution for complete text of the license and disclaimer of any warranty. 0013 // 0014 // Alternatively, this file may be used under the terms of Open CASCADE 0015 // commercial license or contractual agreement. 0016 0017 #ifndef _StepData_UndefinedEntity_HeaderFile 0018 #define _StepData_UndefinedEntity_HeaderFile 0019 0020 #include <Standard.hxx> 0021 #include <Standard_Type.hxx> 0022 0023 #include <Standard_Transient.hxx> 0024 #include <Standard_Integer.hxx> 0025 class TCollection_HAsciiString; 0026 class Interface_UndefinedContent; 0027 class StepData_StepReaderData; 0028 class Interface_Check; 0029 class StepData_StepWriter; 0030 class Interface_CopyTool; 0031 class Interface_EntityIterator; 0032 0033 //! Undefined entity specific to Step Interface, in which StepType 0034 //! is defined at each instance, or is a SubList of another one 0035 //! Uses an UndefinedContent, that from Interface is suitable. 0036 //! Also an Entity defined by STEP can be "Complex Type" (see 0037 //! ANDOR clause in Express). 0038 class StepData_UndefinedEntity : public Standard_Transient 0039 { 0040 0041 public: 0042 //! creates an Unknown entity 0043 Standard_EXPORT StepData_UndefinedEntity(); 0044 0045 //! Creates a SubList of an Unknown entity : it is an Unknown 0046 //! Entity with no Type, but flagged as "SUB" if issub is True 0047 Standard_EXPORT StepData_UndefinedEntity(const bool issub); 0048 0049 //! Returns the UndefinedContent which brings the Parameters 0050 Standard_EXPORT occ::handle<Interface_UndefinedContent> UndefinedContent() const; 0051 0052 //! Returns True if an Unndefined Entity is SubPart of another one 0053 Standard_EXPORT bool IsSub() const; 0054 0055 //! Returns the "super-entity" of a sub-part 0056 Standard_EXPORT occ::handle<StepData_UndefinedEntity> Super() const; 0057 0058 //! Returns True if <me> defines a Multiple Type Entity (see ANDOR) 0059 Standard_EXPORT bool IsComplex() const; 0060 0061 //! For a Multiple Type Entity, returns the Next "Component" 0062 //! For more than two Types, iterative definition (Next->Next...) 0063 //! Returns a Null Handle for the end of the List 0064 Standard_EXPORT occ::handle<StepData_UndefinedEntity> Next() const; 0065 0066 //! gives entity type, read from file 0067 //! For a Complex Type Entity, gives the first Type read, each 0068 //! "Next" gives its "partial" type 0069 //! was C++ : return const 0070 Standard_EXPORT const char* StepType() const; 0071 0072 //! reads data from StepReaderData (i.e. from file), by filling 0073 //! StepType and parameters stored in the UndefinedContent 0074 Standard_EXPORT void ReadRecord(const occ::handle<StepData_StepReaderData>& SR, 0075 const int num, 0076 occ::handle<Interface_Check>& ach); 0077 0078 //! write data to StepWriter, taken from UndefinedContent 0079 Standard_EXPORT void WriteParams(StepData_StepWriter& SW) const; 0080 0081 //! reads another UndefinedEntity from StepData 0082 Standard_EXPORT void GetFromAnother(const occ::handle<StepData_UndefinedEntity>& other, 0083 Interface_CopyTool& TC); 0084 0085 //! Fills the list of shared entities 0086 Standard_EXPORT void FillShared(Interface_EntityIterator& list) const; 0087 0088 DEFINE_STANDARD_RTTIEXT(StepData_UndefinedEntity, Standard_Transient) 0089 0090 private: 0091 occ::handle<TCollection_HAsciiString> thetype; 0092 occ::handle<Interface_UndefinedContent> thecont; 0093 bool thesub; 0094 occ::handle<StepData_UndefinedEntity> thenext; 0095 }; 0096 0097 #endif // _StepData_UndefinedEntity_HeaderFile
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|