/********************************************************************/ /* Copyright (c) 2017 System fugen G.K. and Yuzi Mizuno */ /* All rights reserved. */ /********************************************************************/ #if !defined( __MGIGEDIRECTORYENTRY_H__) #define __MGIGEDIRECTORYENTRY_H__ #include #include #include "mgiges/IgesGSec.h" #include "mgiges/IgesPD.h" #include "mgiges/IgesDEStatusNumber.h" extern const MGIgesDEStatusNumber mgIgesDEStatusNumber; ///MGIgesDirectoryEntry describes a directory entry section of an IGES file. ///In IGES file one directory entry is stored in two records. MGIgesDirectoryEntry ///holds the two records data. class MGIgesDirectoryEntry{ /// Constructors. public: /// Constructs an object of class MGIgesDirectoryEntry. ///Default constructor, includes all the defalut value of MGCL. MGIgesDirectoryEntry(); MGIgesDirectoryEntry( int EntityTypeNumber,///& paramData()const{return m_ParamData;}; int transformID()const{return m_TransformationMatrix;}; int LineFontPattern()const{return m_LineFontPattern;}; int LineWeightNumber()const{return m_LineWeightNumber;}; float LineWidth(const MGIgesGSec& gsec)const; int ColorNumber()const{return m_ColorNumber;}; int FormNumber()const{return m_FormNumber;}; void setFormNumber(int FormNumber){m_FormNumber=FormNumber;}; void setPD(std::unique_ptr& pd); void set_SubordinateEntitySwitch(MGIgesDEStatusNumber::SESwitch eswitch){ m_StatusNumber.set_SubordinateEntitySwitch(eswitch); }; void setTransformID(int trid){m_TransformationMatrix=trid;}; void setLineWeightNumber(int weight){m_LineWeightNumber=weight;}; ///Convert paramData to the each type parameter data, and set it in m_ParamData. void setPD( char pDelimeter, ///& pd=std::unique_ptr(nullptr)); private: int m_EntityTypeNumber; int m_ParameterDataLine;/// m_ParamData; }; #endif // __MGIGEDIRECTORYENTRY_H__