/////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2002-2025, Open Design Alliance (the "Alliance"). // All rights reserved. // // This software and its documentation and related materials are owned by // the Alliance. The software may only be incorporated into application // programs owned by members of the Alliance, subject to a signed // Membership Agreement and Supplemental Software License Agreement with the // Alliance. The structure and organization of this software are the valuable // trade secrets of the Alliance and its suppliers. The software is also // protected by copyright law and international treaty provisions. Application // programs incorporating this software must include the following statement // with their copyright notices: // // This application incorporates Open Design Alliance software pursuant to a license // agreement with Open Design Alliance. // Open Design Alliance Copyright (C) 2002-2025 by Open Design Alliance. // All rights reserved. // // By use of this software, its documentation or related materials, you // acknowledge and accept the above terms. /////////////////////////////////////////////////////////////////////////////// // IfcPresentationLayerAssignment.h: interface for the OdIfcPresentationLayerAssignment class. // ////////////////////////////////////////////////////////////////////// #ifndef _IFC_PRESENTATIONLAYERASSIGNMENT_H_ #define _IFC_PRESENTATIONLAYERASSIGNMENT_H_ #include "IfcCompound.h" #include "TD_PackPush.h" /** \details Contains declarations related to working with IFC file content. */ namespace OdIfc { /** \details A class that implements storing and handling of layer assignments and its components. */ class IFCGEOM_EXPORT OdIfcPresentationLayerAssignment : public OdIfcCompound { //DOM-IGNORE-BEGIN ODRX_DECLARE_MEMBERS(OdIfcPresentationLayerAssignment); //DOM-IGNORE-END public: /** \details Creates an instance of IfcPresentationLayerAssignment within a model based on items that are assigned to a single layer. \param pFile [in] OdStepFile pointer to the owning file. \returns A pointer to the created and appended to the model entity. */ static OdSmartPtr createObject(OdStepFile* pFile); /** \details Sets the values of the presentation layer traits. \param pTraits [out] A raw pointer to the traits to be filled and returned to a calling subroutine. \returns The result of the value setting. */ OdUInt32 subSetAttributes(OdGiDrawableTraits* pTraits) const override; /** \details Draws graphical representation of the item that is independent on any view port contexts. \param pWd [in] A raw pointer to the object that encapsulates parameters of view port independent vectorization. \returns true if the drawing was successful; otherwise, the method returns false. */ bool subWorldDraw(OdGiWorldDraw* pWd) const override; /** \details Composes the layer assignment item object. */ void compose() override; /** \details Assigns name to the instance of current IfcPresentationLayerAssignment. \param name [in] OdString that determines layer name. */ void setLayerName(const OdString & name); /** \details Assigns products of the specified type and their representaions to the current IfcPresentationLayerAssignment. \param entityType [in] entity type that determines items which representations should be assigned to the new layer. */ void setLayerEntityType(const char * entityType); /** \details Assigns representations to the instance of current IfcPresentationLayerAssignment. \param assignedItems [in] OdDAIObjectIds collection ids of IfcRepresentation or IfcRepresentationItem, which are assigned to this layer. */ void setLayerItems(const OdDAIObjectIds& assignedItems); /** \details Retrieves representations collection of current IfcPresentationLayerAssignment. \returns OdDAIObjectIds collection of IfcPresentation/IfcRepresentationItem items used in current IfcPresentationLayerAssignment entity. */ OdDAIObjectIds getAssignedItems() const; /** \details Assigns products extracted representations to the instance of current IfcPresentationLayerAssignment. \param products [in] OdDAIObjectIds collection ids of layered products, which representations are extracted and assigned to this layer. */ void setLayerProducts(const OdDAIObjectIds& products); }; SMARTPTR(OdIfcPresentationLayerAssignment) } #include "TD_PackPop.h" #endif // _IFC_PRESENTATIONLAYERASSIGNMENT_H_