// OperUrfFile.h: interface for the COperUrfFile class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_OPERURFFILE_H__1A6F9CEA_94F5_40F5_B28B_805B378652A9__INCLUDED_) #define AFX_OPERURFFILE_H__1A6F9CEA_94F5_40F5_B28B_805B378652A9__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 class COperUrfFile { public: COperUrfFile(); virtual ~COperUrfFile(); bool OpenUrfFileForWrite(const char* pFileName); bool WriteUrfHeadInfo(); bool Write3DUrfHeadInfo(); bool WriteUrfPoleInfo(WORD wEamount, float fPoleSpace); bool WriteUrfDataInfo(const CStringArray& strArrTxt); bool WriteUrfDataInfo(const CString& strTxtContent); void CloseFile(); bool WriteElecByWenSch(FILE* pFile, WORD wEamount, float fPoleSpace, int iStartElec, int iEndElec); bool WriteElecByWenSch_AMN(FILE* pFile, WORD wEamount, float fPoleSpace, int iStartElec, int iEndElec); bool WriteElecByWenSch_MNB(FILE* pFile, WORD wEamount, float fPoleSpace, int iStartElec, int iEndElec); bool WriteElecByWenSch_AM(FILE* pFile, WORD wEamount, float fPoleSpace, int iStartElec, int iEndElec); bool WriteElecByCrossHole(FILE* pFile, WORD wEamount, float fPoleSpace, float fHoleSpace, int iStartElec, int iEndElec); //跨孔装置直接从数据库读取的电极编号,因此不需要传递起始电极和结束电极 bool WriteElecByCrossHoleGeomative(FILE* pFile, WORD wEamount, float fPoleSpace, CString strSCCN, CString strTaskID); bool WriteElecByCrossHoleGeomativeAM(FILE* pFile, WORD wEamount, float fPoleSpace,CString strSCCN, CString strTaskID); bool WriteElecByAR(FILE* pFile, int iAR, WORD wEAmount, float fPoleSpace, float fParam, int iStartElec, int iEndElec, CString strSCCN = _T(""), CString strTaskID = _T("")); bool WriteUrfPoleInfo(int iAR, WORD wEamount, float fPoleSpace, float fParamVal, int iStartElec, int iEndElec, CString strSCCN = _T(""), CString strTaskID = _T("")); //3D urf文件导出 bool WriteElecByPolePole_AM_3D(FILE* pFile, byte byTestLineDirection, int iXElecCount, int iYElecCount, float fXEDistance, float fYEDistance, int iStartElec, int iEndElec, CString strSCCN = _T(""), CString strTaskID = _T("")); bool WriteElecByPoleDipole_AMN_3D(FILE* pFile, byte byTestLineDirection, int iXElecCount, int iYElecCount, float fXEDistance, float fYEDistance, int iStartElec, int iEndElec, CString strSCCN = _T(""), CString strTaskID = _T("")); bool WriteElecByDipoleDipole_MNB_3D(FILE* pFile, byte byTestLineDirection, int iXElecCount, int iYElecCount, float fXEDistance, float fYEDistance, int iStartElec, int iEndElec, CString strSCCN = _T(""), CString strTaskID = _T("")); bool WriteElecBySchlumberger_3D(FILE* pFile, byte byTestLineDirection, int iXElecCount, int iYElecCount, float fXEDistance, float fYEDistance, int iStartElec, int iEndElec, CString strSCCN = _T(""), CString strTaskID = _T("")); bool WriteElecByAR_3D(FILE* pFile, int iAR, byte byTestLineDirection, int iXElecCount, int iYElecCount, float fXEDistance, float fYEDistance, int iStartElec, int iEndElec, CString strSCCN = _T(""), CString strTaskID = _T("")); bool WriteUrfPoleInfo_3D(int iAR, byte byTestLineDirection, int iXElecCount, int iYElecCount, float fXEDistance,float fYEDistance, int iStartElec, int iEndElec, CString strSCCN = _T(""), CString strTaskID = _T("")); void SetExtParam(float fParam){m_fExtParam = fParam;} protected: FILE* m_pFile; float m_fExtParam; }; #endif // !defined(AFX_OPERURFFILE_H__1A6F9CEA_94F5_40F5_B28B_805B378652A9__INCLUDED_)