File indexing completed on 2026-06-18 08:30:33
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _STEPConstruct_ExternRefs_HeaderFile
0017 #define _STEPConstruct_ExternRefs_HeaderFile
0018
0019 #include <Standard.hxx>
0020 #include <Standard_DefineAlloc.hxx>
0021 #include <Standard_Handle.hxx>
0022
0023 #include <TColStd_SequenceOfTransient.hxx>
0024 #include <STEPConstruct_Tool.hxx>
0025 #include <Standard_Integer.hxx>
0026 #include <Standard_CString.hxx>
0027 class StepBasic_ProductRelatedProductCategory;
0028 class StepBasic_DocumentType;
0029 class StepBasic_ProductDefinitionContext;
0030 class StepBasic_ProductContext;
0031 class StepBasic_ApplicationProtocolDefinition;
0032 class XSControl_WorkSession;
0033 class StepBasic_ProductDefinition;
0034 class TCollection_HAsciiString;
0035 class StepAP214_AppliedDocumentReference;
0036 class StepBasic_DocumentFile;
0037
0038
0039
0040
0041
0042
0043
0044
0045 class STEPConstruct_ExternRefs : public STEPConstruct_Tool
0046 {
0047 public:
0048 DEFINE_STANDARD_ALLOC
0049
0050
0051 Standard_EXPORT STEPConstruct_ExternRefs();
0052
0053
0054 Standard_EXPORT STEPConstruct_ExternRefs(const Handle(XSControl_WorkSession)& WS);
0055
0056
0057 Standard_EXPORT Standard_Boolean Init(const Handle(XSControl_WorkSession)& WS);
0058
0059
0060 Standard_EXPORT void Clear();
0061
0062
0063
0064
0065 Standard_EXPORT Standard_Boolean LoadExternRefs();
0066
0067
0068 Standard_EXPORT Standard_Integer NbExternRefs() const;
0069
0070
0071
0072 Standard_EXPORT Standard_CString FileName(const Standard_Integer num) const;
0073
0074
0075
0076
0077
0078 Standard_EXPORT Handle(StepBasic_ProductDefinition) ProdDef(const Standard_Integer num) const;
0079
0080
0081
0082
0083 Standard_EXPORT Handle(StepBasic_DocumentFile) DocFile(const Standard_Integer num) const;
0084
0085
0086
0087 Standard_EXPORT Handle(TCollection_HAsciiString) Format(const Standard_Integer num) const;
0088
0089
0090
0091
0092
0093
0094 Standard_EXPORT Standard_Integer AddExternRef(const Standard_CString filename,
0095 const Handle(StepBasic_ProductDefinition)& PD,
0096 const Standard_CString format);
0097
0098
0099 Standard_EXPORT void checkAP214Shared();
0100
0101
0102
0103 Standard_EXPORT Standard_Integer WriteExternRefs(const Standard_Integer num) const;
0104
0105
0106 Standard_EXPORT void SetAP214APD(const Handle(StepBasic_ApplicationProtocolDefinition)& APD);
0107
0108
0109
0110 Standard_EXPORT Handle(StepBasic_ApplicationProtocolDefinition) GetAP214APD();
0111
0112 protected:
0113
0114
0115 Standard_EXPORT Standard_Boolean
0116 addAP214ExterRef(const Handle(StepAP214_AppliedDocumentReference)& ADR,
0117 const Handle(StepBasic_ProductDefinition)& PD,
0118 const Handle(StepBasic_DocumentFile)& DF,
0119 const Standard_CString filename);
0120
0121 private:
0122 TColStd_SequenceOfTransient myAEIAs;
0123 TColStd_SequenceOfTransient myRoles;
0124 TColStd_SequenceOfTransient myFormats;
0125 TColStd_SequenceOfTransient myShapes;
0126 TColStd_SequenceOfTransient myTypes;
0127 TColStd_SequenceOfInteger myIsAP214;
0128 TColStd_SequenceOfInteger myReplaceNum;
0129 TColStd_SequenceOfTransient myDocFiles;
0130 Handle(StepBasic_ProductRelatedProductCategory) mySharedPRPC;
0131 Handle(StepBasic_DocumentType) mySharedDocType;
0132 Handle(StepBasic_ProductDefinitionContext) mySharedPDC;
0133 Handle(StepBasic_ProductContext) mySharedPC;
0134 Handle(StepBasic_ApplicationProtocolDefinition) myAPD;
0135 };
0136
0137 #endif