/////////////////////////////////////////////////////////////////////////////// // 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. /////////////////////////////////////////////////////////////////////////////// // IfcPresentationLayerWithStyle.h: interface for the OdIfcPresentationLayerWithStyle class. // ////////////////////////////////////////////////////////////////////// #ifndef _IFC_PRESENTATIONLAYERWITHSTYLE_H_ #define _IFC_PRESENTATIONLAYERWITHSTYLE_H_ #include "IfcPresentationLayerAssignment.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 styled layers and its components. */ class IFCGEOM_EXPORT OdIfcPresentationLayerWithStyle : public OdIfcPresentationLayerAssignment { //DOM-IGNORE-BEGIN ODRX_DECLARE_MEMBERS(OdIfcPresentationLayerWithStyle); //DOM-IGNORE-END public: /** \details Creates an instance of IfcPresentationLayerWithStyle 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 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 Composes the layer item object. */ void compose() override; /** \details Assigns styles collection to the instance of current IfcPresentationLayerWithStyle. \param styles [in] OdDAIObjectIds collection ids of IfcPresentationStyle items to provide a default style for representation items. */ void setLayerStyles(const OdDAIObjectIds& styles); /** \details Retrieves styles collection of current IfcPresentationLayerWithStyle. \returns OdDAIObjectIds collection of IfcPresentationStyle items used for representation items in current IfcPresentationLayerWithStyle entity. */ OdDAIObjectIds getLayerStyles() const; /** \details Assigns layer state. \param val [in] true indicates that the layer should be 'On', false that the layer should be 'Off'. */ void setLayerOn(bool val); /** \details Assigns layer freeze state. \param val [in] true indicates that the layer should be 'Frozen', false that the layer should be 'Not frozen'. */ void setLayerFrozen(bool val); /** \details Assigns layer block state. \param val [in] true indicates that the layer should be 'Blocked', false that the layer should be 'Not blocked'. */ void setLayerBlocked(bool val); /** \details Retrieves layer state. \returns TRUE if the layer is set to 'On', FALSE that the layer is set to 'Off'. UNKNOWN/UNSET means that such information is not available. */ OdDAI::Logical getLayerOn() const; /** \details Retrieves layer freeze state. \returns TRUE if the layer is set to 'Frozen', FALSE that the layer is set to 'Not frozen'. UNKNOWN/UNSET means that such information is not available. */ OdDAI::Logical getLayerFrozen() const; /** \details Retrieves layer block state. \returns TRUE if the layer is set to 'Blocked', FALSE that the layer is set to 'Not blocked'. UNKNOWN/UNSET means that such information is not available. */ OdDAI::Logical getLayerBlocked() const; }; SMARTPTR(OdIfcPresentationLayerWithStyle) } #include "TD_PackPop.h" #endif // _IFC_PRESENTATIONLAYERWITHSTYLE_H_