// Created on: 1993-08-04 // Created by: Herve LEGRAND // Copyright (c) 1993-1999 Matra Datavision // Copyright (c) 1999-2014 OPEN CASCADE SAS // // This file is part of Open CASCADE Technology software library. // // This library is free software; you can redistribute it and/or modify it under // the terms of the GNU Lesser General Public License version 2.1 as published // by the Free Software Foundation, with special exception defined in the file // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT // distribution for complete text of the license and disclaimer of any warranty. // // Alternatively, this file may be used under the terms of Open CASCADE // commercial license or contractual agreement. #ifndef _STEPConstruct_Part_HeaderFile #define _STEPConstruct_Part_HeaderFile #include "Standard.hxx" #include "Standard_DefineAlloc.hxx" #include "Standard_Handle.hxx" class StepShape_ShapeDefinitionRepresentation; class StepBasic_ProductRelatedProductCategory; class StepShape_ShapeRepresentation; class TCollection_HAsciiString; class StepBasic_ApplicationContext; class StepBasic_ProductContext; class StepBasic_ProductDefinitionContext; class StepBasic_Product; class StepBasic_ProductDefinitionFormation; class StepBasic_ProductDefinition; class StepData_StepModel; class StepRepr_ProductDefinitionShape; //! Provides tools for creating STEP structures associated //! with part (SDR), such as PRODUCT, PDF etc., as //! required by current schema //! Also allows to investigate and modify this data class STEPConstruct_Part { public: DEFINE_STANDARD_ALLOC Standard_EXPORT STEPConstruct_Part(); Standard_EXPORT void MakeSDR(const occ::handle& aShape, const occ::handle& aName, const occ::handle& AC, const occ::handle& theStepModel); Standard_EXPORT void ReadSDR(const occ::handle& aShape); Standard_EXPORT bool IsDone() const; //! Returns SDR or Null if not done Standard_EXPORT occ::handle SDRValue() const; //! Returns SDR->UsedRepresentation() or Null if not done Standard_EXPORT occ::handle SRValue() const; Standard_EXPORT occ::handle PC() const; Standard_EXPORT occ::handle PCname() const; Standard_EXPORT occ::handle PCdisciplineType() const; Standard_EXPORT void SetPCname(const occ::handle& name); Standard_EXPORT void SetPCdisciplineType(const occ::handle& label); Standard_EXPORT occ::handle AC() const; Standard_EXPORT occ::handle ACapplication() const; Standard_EXPORT void SetACapplication(const occ::handle& text); Standard_EXPORT occ::handle PDC() const; Standard_EXPORT occ::handle PDCname() const; Standard_EXPORT occ::handle PDCstage() const; Standard_EXPORT void SetPDCname(const occ::handle& label); Standard_EXPORT void SetPDCstage(const occ::handle& label); Standard_EXPORT occ::handle Product() const; Standard_EXPORT occ::handle Pid() const; Standard_EXPORT occ::handle Pname() const; Standard_EXPORT occ::handle Pdescription() const; Standard_EXPORT void SetPid(const occ::handle& id); Standard_EXPORT void SetPname(const occ::handle& label); Standard_EXPORT void SetPdescription(const occ::handle& text); Standard_EXPORT occ::handle PDF() const; Standard_EXPORT occ::handle PDFid() const; Standard_EXPORT occ::handle PDFdescription() const; Standard_EXPORT void SetPDFid(const occ::handle& id); Standard_EXPORT void SetPDFdescription(const occ::handle& text); Standard_EXPORT occ::handle PD() const; Standard_EXPORT occ::handle PDdescription() const; Standard_EXPORT void SetPDdescription(const occ::handle& text); Standard_EXPORT occ::handle PDS() const; Standard_EXPORT occ::handle PDSname() const; Standard_EXPORT occ::handle PDSdescription() const; Standard_EXPORT void SetPDSname(const occ::handle& label); Standard_EXPORT void SetPDSdescription(const occ::handle& text); Standard_EXPORT occ::handle PRPC() const; Standard_EXPORT occ::handle PRPCname() const; Standard_EXPORT occ::handle PRPCdescription() const; Standard_EXPORT void SetPRPCname(const occ::handle& label); Standard_EXPORT void SetPRPCdescription(const occ::handle& text); private: bool myDone; occ::handle mySDR; occ::handle myPRPC; }; #endif // _STEPConstruct_Part_HeaderFile