#ifndef TRACKSAMPLEOBJ_H #define TRACKSAMPLEOBJ_H #pragma once ////////////////////////////////////////////////////////////////////////////// //主要功能: // 岩样道类 ///////////////////////////////////////////////////////////////////////////// class AFX_EXT_CLASS CTrackSample : public CInclinedTrack { protected: public: CTrackSample(); CTrackSample(const CRect8& position); ~CTrackSample(); CLONE_WELLOBJECT(CTrackSample) virtual void operator=(CTrackSample& object); protected: DWORD m_nTrackSampleFlags; // 岩样道开关状态 // 岩样道Flags enum TrackSampleFlags { TrackSampleFlagMark = 0x0001, // 显示标注 TrackSampleFlagArrange = 0x0002, // 竖直标注 }; // Implementation public: virtual void AddObjChild(); //创建岩样子对象 virtual void CalcBorders(); virtual void Serialize(CArchive& ar, const short &ver); //开关变量值 virtual void SetTrackSampleFlags(DWORD flags); virtual void SetShowMark(BOOL bFlag); virtual void SetMarkArrange(BOOL bFlag); virtual DWORD GetTrackSampleFlags(); virtual BOOL IsShowMark(); virtual BOOL IsMarkArrange(); virtual void ResetChildProperties(); ////从工区导入数据时创建道内子对象 void BuidChildObject(vector &fields, StringVectorSet &datas, vector &fieldsTopAndBot, StringVectorSet &datasTopAndBot); ////获取道内对象的具体内容 void GetChildDatas(StringVectorSet &dataContent, BOOL bHaveWellName = TRUE); /////获取道内对象深度段内容 void GetChildTopAndBotDatas(StringVectorSet &dataContent, BOOL bHaveWellName = TRUE); public: // PCG格式的读写 //读道属性 virtual int ReadPCG_Self(CFile &fr,CXmlParse& xp,const short& ver ); //读pcg格式的数据 virtual int ReadPCG_Data(CFile &fr,const short& ver); //写pcg格式的道 virtual void WritePCG_Trace(CFile &fw,int nBaseTabNum); //写pcg格式的道内数据 virtual void WritePCG_Data(CFile &fw,int nBaseTabNum); public: virtual int ReadPCG_Self(CKXmlParse& xp, const short& ver); //读pcg格式的数据 virtual int ReadPCG_Data(CKXmlParse& xp, const short& ver); public: virtual void GetChildDatas(CString& jsonStr); virtual BOOL SetChildDatas(CString& jsonStr); }; #endif