#ifndef __LOGIO_H__ #define __LOGIO_H__ #include "slf.h" //常规曲线 typedef struct tagSlf_CURVE { char Name[64];//[16]; //曲线名 char AliasName[64];//[16]; //曲线别名 char Unit[32];//[8]; //曲线单位名 char AliasUnit[32];//[16]; //曲线单位别名 WORD RepCode; WORD CodeLen; float MinValue; float MaxValue; float StartDepth; float EndDepth; float DepLevel; char DepthUnit[32];//[8]; // char DepthHZUnit[32]; float DefVal;// 4 缺省值 short SerialID;// 2 所属系列代码 short ChangeNum;// 2 修改次数 char DataSource[20];// 20 数据来源 char LogCopanyName[64];//公司名 char LoggingTeam[20];//测井队 char Operator[20];//操作员 unsigned int LoggingDate;//测井时间 4 /*whp add //初始化 tagSlf_CURVE() { strcpy(Name,"");//[16]; strcpy(AliasName,"");//[16]; strcpy(Unit,"");//[8]; strcpy(AliasUnit,"");//[16]; RepCode=4; CodeLen=4; MinValue=0.; MaxValue=100.; StartDepth=0.; EndDepth=100.; DepLevel=0.125; strcpy(DepthUnit,"m"); strcpy(DepthHZUnit,"米"); DefVal=-9999.;// 4 缺省值 SerialID=0;// 2 所属系列代码 ChangeNum=1;// 2 修改次数 strcpy( DataSource,"create");// 20 数据来源 strcpy( LogCopanyName,"测井公司");//公司名 strcpy( LoggingTeam,"");//测井队 strcpy( Operator,"");//操作员 LoggingDate=0;//测井时间 }*/ }Slf_CURVE; //波列曲线 typedef struct tagSlf_WAVE { char Name[64];//[16]; char AliasName[64];//[16]; char Unit[32];//[8]; char AliasUnit[32];//[16]; WORD RepCode; WORD CodeLen; float MinValue; float MaxValue; float StartDepth; float EndDepth; float DepLevel; char DepthUnit[32]; char DepthHZUnit[32]; float DefVal;// 4 缺省值 short SerialID;// 2 所属系列代码 short ChangeNum;// 2 修改次数 char DataSource[20];// 20 数据来源 char LogCopanyName[64];//公司名 char LoggingTeam[20];//测井队 char Operator[20];//操作员 unsigned int LoggingDate;//测井时间 int ArrayNum;// 4 阵列数 int SamplePoint;// 4 一个阵列的横向采样样本点数 float StartTime; float TimeLevel; DWORD TimeSamples; char TimeUnit[32]; char TimeHZUnit[32]; char TimeName[64]; char TimeHZName[64]; /*whp add //初始化 tagSlf_WAVE() { strcpy(Name,"");//[16]; strcpy(AliasName,"");//[16]; strcpy(Unit,"");//[8]; strcpy(AliasUnit,"");//[16]; RepCode=4; CodeLen=4; MinValue=0.; MaxValue=100.; StartDepth=0.; EndDepth=100.; DepLevel=0.125; strcpy(DepthUnit,"m"); strcpy(DepthHZUnit,"米"); DefVal=-9999.;// 4 缺省值 SerialID=0;// 2 所属系列代码 ChangeNum=1;// 2 修改次数 strcpy( DataSource,"create");// 20 数据来源 strcpy( LogCopanyName,"测井公司");//公司名 strcpy( LoggingTeam,"");//测井队 strcpy( Operator,"");//操作员 LoggingDate=0;//测井时间 ArrayNum=1;// 4 阵列数 SamplePoint=100;// 4 一个阵列的横向采样样本点数 StartTime=0; TimeLevel=1; DWORD TimeSamples=100; strcpy( TimeUnit,""); strcpy( TimeHZUnit,""); }*/ }Slf_WAVE; typedef struct Image_Table { int Order; float StartDepth; float EndDepth; float Left,Width; char Image[100]; } IMAGE_DATA; typedef struct tagSlf_LONG_CONST { char MNEM[16]; int VALUE; char UNIT[8]; char DESC[40]; } Slf_CONST; typedef struct tagSlf_STRING_CONST { char MNEM[16]; char VALUE[40]; char UNIT[8]; char DESC[40]; } Slf_STRING; typedef struct tagSlf_CORE_PHYSICS { int Order; float Depth; float CorrDepth; float CoreValue; } Slf_CORE_PHYSICS; typedef struct tagSlf_FMT { char Name[64]; char AliasName[64]; char Unit[32]; char AliasUnit[64]; float MinValue; float MaxValue; DWORD TotalPointNum; DWORD MaxPointSamples; char DepthUnit[32]; float StartTime; float TimeLevel; DWORD TimeSamples; char TimeUnit[32]; }Slf_FMT; typedef struct oal_stru { int NO;//序号; float dep;//测点深度; char CheckNo[32];//探头号 char logd[32];//测井方向, char oilorcast[32];//空间类型; float ftime;//峰开始时间, float etime;//峰结束时间; float toptime;//峰位; float breaktime;//中子爆发时间; float prol;//谱周期; float v;//速度; float q;//流量, } OAL_DATA; typedef struct rft_stru { int NO; float dep,depth,tvd; float MG,PG,FG,SG,MG1,FST,FET,SET; float MGG,PGG,FGG,SGG; float Q1,DP1,K1; float Q2,DP2,K2; float K; char Result[32]; float TMG,TPG,TFG,TSG,TMG1,FSTV,FETV,SETV; } RFT_DATA; typedef struct tagWELLSTATICINFO { char AreaName[40]; char OilCompanyName[40]; char WellName[40]; int APICode; int WellType; double XCoor,YCoor; float As1,Bs1; char StartDrillDate[12]; char EndDrillDate[12]; char CompleteDate[12]; char MethodCWell[16]; char BitProg[5][24]; char CasProg[5][24]; float shotCas1,Sc1sdep,Sc1Edep; float shotCas2,Sc2sdep,Sc2Edep; char Remark[64]; } WELL_STATIC_INFO; typedef struct tagWELLDYNAMICINFO { char LogCompanyName[40]; char Operator[16]; char Date[12]; char Serial[16]; char Item[16]; char Section[16]; char MudType[12]; float WaterLoss; float MudViscosity,MudDensity,MudResi,MudTemp; char LogRange[24],IntRange[24]; float TempBot; char IntProg[12]; char IntDress[16]; char Author[16]; char Remark[64]; } WELL_DYNAMIC_INFO; typedef struct tagSlf_CORE { float Depth; int oil; int Lith; int Color; char Date[12]; char Tool[12]; int Number; char LithName[32]; char Remark[64]; } Slf_CORE; typedef struct tagSlf_TDT { char Name[64]; char AliasName[64]; char Unit[32]; char AliasUnit[64]; float MinValue; float MaxValue; DWORD TotalLogNumber; DWORD MaxLogSamples; char LogTimeUnit[32]; char DepthUnit[32]; char TimeUnit[32]; }Slf_TDT; typedef struct Perforation_Table { int Order;//序号 float StartDepth;//起始深度 float EndDepth;//终止深度 char Zone[8];//解释层号 int Result;//解释结论号 float Thick;//层厚 float Tt;//有效厚度 char ZoneNo[64]; char Layer[64]; char Dest[64]; } SLF_SK,SLF_PERF,*LPSLF_PERF; typedef struct { float Depth; float Time; float Value; }TDT_DATA; typedef struct Wis_Result_Table { int Order;//序号 float StartDepth;//起始深度 float EndDepth;//终止深度 char Zone[8];//解释层号 int Result;//解释结论号 float Thick;//层厚 float Tt;//有效厚度 } WIS_Result; typedef struct Result_Table_OLD { int Order;//序号 float StartDepth;//起始深度 float EndDepth;//终止深度 char Zone[8];//解释层号 int Result;//解释结论号 float Thick;//层厚 float Tt;//有效厚度 float MDepth1; float MDepth2; float MDepth3; float MDepth4; float MDepth5; float MDepth6,MDepth7,MDepth8,MDepth9,MDepth10; float Oil,PoorOil,OilWater,WaterOil,Gas,PoorGas,GasWater,WaterGas; char Description1[48];//地质分层 char Description2[48];//地质分层 char Description3[48];//地质分层 char Description4[48];//地质分层 char Description5[48];//地质分层 char Description6[48];//地质分层 char Description7[48];//地质分层 char Description8[48];//地质分层 char Description9[48];//地质分层 char Description10[48];//地质分层 } LAYER_DATA_OLD; typedef struct Result_Table { int Order;//序号 float StartDepth;//起始深度 float EndDepth;//终止深度 char Zone[8];//解释层号 int Result;//解释结论号 float Thick;//层厚 float Tt;//有效厚度 float MDepth1; float MDepth2; float MDepth3; float MDepth4; float MDepth5; float MDepth6,MDepth7,MDepth8,MDepth9,MDepth10; float Oil,PoorOil,OilWater,WaterOil,Gas,PoorGas,GasWater,WaterGas; char Description1[48];//地质分层 char Description2[48];//地质分层 char Description3[48];//地质分层 char Description4[48];//地质分层 char Description5[48];//地质分层 char Description6[48];//地质分层 char Description7[48];//地质分层 char Description8[48];//地质分层 char Description9[48];//地质分层 char Description10[48];//地质分层 float Sdep1,Edep1; float Sdep2,Edep2; float Sdep3,Edep3; float Sdep4,Edep4; float Sdep5,Edep5; float Sdep6,Edep6; float Sdep7,Edep7; float Sdep8,Edep8; float Sdep9,Edep9; float Sdep10,Edep10; } LAYER_DATA; typedef struct SWall_Core_Table { int Order; float Depth; int CoreOil; int CoreLith; int CoreColor; float left; float width; char dest[64];//OG_RESULT表纪录长度544 } WALLCORE_DATA; typedef struct Words_Table { int Order; float StartDepth; float EndDepth; char Words[100]; } WORDS_DATA; typedef struct GUJING_struct{ int NO; float SDEP,EDEP; int RESULT; } GUJING_DATA; void SLFIO_EXPORT ComputeH(QString zonename,LAYER_DATA &tempRes,float h,float total=0); void SLFIO_EXPORT ComputeTT(LAYER_DATA &m_Result, QString &result, QString &result1, QString &result2, QString &result3, QString &result4, QString &result5, QString &result6, QString &result7, QString &result8, QString &result9, QString &result10 ); SLFIO_EXPORT char* GetDescription(LAYER_DATA &m_Result,char *buf); class SLFIO_EXPORT CLogIO : public CSlfIO { private: Slf_CHANNEL cpInfo; Slf_CURVE *m_Curve; Slf_WAVE *m_Wave; Slf_FMT *m_Fmt; Slf_TDT *m_Tdt; public: char **Slf_Info; QStringList Slf_Menu[13]; int m_MenuNumber; public: CLogIO(); CLogIO(const char* szLogFileName,int FileType=0); CLogIO(const char* szLogFileName,unsigned int nOpenFlags,int BlockLen = 1024,int MaxObjectNumber=1024, int MachineType=MACHINE_TYPE,int FileType=0); bool Open(const char* szLogFileName,unsigned int nOpenFlags,int BlockLen=1024,int MaxObjectNumber=1024, int MachineType=MACHINE_TYPE,int FileType=0); ~CLogIO(); //protected: int Open_Set_Table(const char *name,short Subattriber=0,int fieldcount=0,const char *FieldName=NULL,const char *FieldLength=NULL,const char *FieldType=NULL,const char *FieldResave=NULL,const char *FieldHZName=NULL,const char *FieldUnit=NULL,const char *FieldHZUnit=NULL); int OpenOG_RESULT (const char *name); int OpenFRAC_MODEL (const char *name); int OpenFRAC_LEVEL (const char *name); int OpenCORE_PHYSICS(const char *name); int OpenFMT_MODEL (const char *name); int OpenFMT_RESULT (const char *name); int OpenSTATIC (const char *name); int OpenDYNAMIC (const char *name); int OpenCORE (const char *name); void Close(); void SetChannelInfo(int index,Slf_CHANNEL* pInfo); void SetSlfChannelInfo(int index,Slf_CHANNEL* pInfo); void WriteBuf(char *buffer,int RepCode1,int CodeLen,MyDataTypeEnum &vVdl,int RepCode,DWORD count,int TimeSamples); void SetFieldInfo(int num,char *str1,char *str2,char *str3,char *str4,Slf_TABLE_FIELD *FieldInfo,char *str5=NULL,char *FieldUnit=NULL,char *FieldHZUnit=NULL); void GetSlfChannelInfo(int index,Slf_CHANNEL* pInfo); void GetWisChannelInfo(int index,Slf_CHANNEL* pInfo); void GetChannelInfo(int index,Slf_CHANNEL* pInfo); DWORD ReadWisWave(int index, float depth, DWORD count, char* buffer); bool ReverseDepth (int index); bool WisMoveDepth(int index,float sdep, float edep, float delta); bool WisCorrectDepth(int index,float delta); bool WisExpandDepth(int index,float sdep,float edep); int OpenWisCurve(const char* name); int OpenSlfCurve(Slf_CURVE* pInfo,bool bFailExist=FALSE); int OpenWisCurve(Slf_CURVE* pInfo,bool bFailExist=FALSE); bool GetWisCurveInfo(int index,Slf_CURVE* pInfo); int CreateWisCurve(Slf_CURVE* pInfo,bool bFailExist=FALSE); void CloseWisCurve(int index); DWORD ReadWisCurve(int index, float depth, DWORD count, char* buffer); bool SlfMoveDepth(int index,float sdep, float edep, float delta); bool SlfCorrectDepth(int index,float delta); bool SlfExpandDepth(int index,float sdep,float edep); int OpenSlfCurve(const char* name); int OpenSLfCurve(Slf_CURVE* pInfo,bool bFailExist=FALSE); bool GetSlfCurveInfo(int index,Slf_CURVE* pInfo); int CreateSlfCurve(Slf_CURVE* pInfo,bool bFailExist=FALSE); void CloseSlfCurve(int index); DWORD ReadSlfCurve(int index, float depth, DWORD count, char* buffer); bool MoveDepth(int index,float sdep, float edep, float delta); bool CorrectDepth(int index,float delta); bool ExpandDepth(int index,float sdep,float edep); int OpenCurve(const char* name); int OpenCurve(Slf_CURVE* pInfo,bool bFailExist=FALSE); bool GetCurveInfo(int index,Slf_CURVE* pInfo); int CreateCurve(Slf_CURVE* pInfo,bool bFailExist=FALSE); void CloseCurve(int index); DWORD ReadCurve(int index, float depth, DWORD count, void* buffer); DWORD ReadCurve(int index, float depth, DWORD count, char* buffer); DWORD ReadCurve(int index, float depth, DWORD count, short* buffer); DWORD ReadCurve(int index, float depth, DWORD count, int* buffer); //DWORD ReadCurve(int index, float depth, DWORD count, long* buffer); DWORD ReadCurve(int index, float depth, DWORD count, unsigned char* buffer); DWORD ReadCurve(int index, float depth, DWORD count, unsigned short* buffer); DWORD ReadCurve(int index, float depth, DWORD count, unsigned int* buffer); //DWORD ReadCurve(int index, float depth, DWORD count, unsigned long* buffer); DWORD ReadCurve(int index, float depth, DWORD count, float* buffer); DWORD ReadCurve(int index, float depth, DWORD count, double* buffer); DWORD WriteWisCurve(int index, float depth, DWORD count, char* buffer); DWORD WriteSlfCurve(int index, float depth, DWORD count, char* buffer); DWORD WriteCurve(int index, float depth, DWORD count, char* buffer); DWORD WriteCurve(int index, float depth, DWORD count, void* buffer); DWORD WriteCurve(int index, float depth, DWORD count, short* buffer); DWORD WriteCurve(int index, float depth, DWORD count, int* buffer); //DWORD WriteCurve(int index, float depth, DWORD count, long* buffer); DWORD WriteCurve(int index, float depth, DWORD count, unsigned char* buffer); DWORD WriteCurve(int index, float depth, DWORD count, unsigned short* buffer); DWORD WriteCurve(int index, float depth, DWORD count, unsigned int* buffer); //DWORD WriteCurve(int index, float depth, DWORD count, unsigned long* buffer); DWORD WriteCurve(int index, float depth, DWORD count, float* buffer); DWORD WriteCurve(int index, float depth, DWORD count, double* buffer); //whp add DWORD ReadCurveToFloatBuf(int index, float depth, DWORD count, float* buffer); DWORD WriteCurveFromFloatBuf(int index, float depth, DWORD count, float* buffer); DWORD ReadWaveToFloatBuf(int index, float depth, DWORD count, float* buffer); DWORD WriteWaveFromFloatBuf(int index, float depth, DWORD count, float* buffer); int OpenWave(const char* name); int OpenWave(Slf_WAVE* pInfo); int CreateWave(Slf_WAVE* pInfo,bool bFailExist=FALSE); int OpenSlfWave(const char* name); int OpenSlfWave(Slf_WAVE* pInfo); int CreateSlfWave(Slf_WAVE* pInfo,bool bFailExist=FALSE); void CloseWave(int index); int OpenWisWave(const char* name); int OpenWisWave(Slf_WAVE* pInfo); int CreateWisWave(Slf_WAVE* pInfo,bool bFailExist=FALSE); int GetTableFieldData(char *TableName,char *FiledName,char *buf,int Rec=1,bool islink=false); int GetTableFieldData(char *TableName,char *FiledName,char *buf,float &yy,int Rec=1,bool islink=false); bool GetWaveInfo(int index,Slf_WAVE* pInfo); bool GetWisWaveInfo(int index,Slf_WAVE* pInfo); bool GetSlfWaveInfo(int index,Slf_WAVE* pInfo); DWORD ReadWave(int index, float depth, DWORD count, int* buffer); DWORD ReadWave(int index, float depth, DWORD count, float* buffer); DWORD ReadWave(int index, float depth, DWORD count, short* buffer); DWORD ReadWave(int index, float depth, DWORD count, void* buffer); DWORD ReadWave(int index, float depth, DWORD count, char* buffer); DWORD WriteWave(int index, float depth, DWORD count, int* buffer); DWORD WriteWave(int index, float depth, DWORD count, float* buffer); DWORD WriteWave(int index, float depth, DWORD count, short* buffer); DWORD WriteWave(int index, float depth, DWORD count, char* buffer); DWORD WriteWave(int index, float depth, DWORD count, void* buffer); int GetTableFieldData(int index,char *FieldName,char *buf,int Rec,bool islink=false); int GetTableFieldNo(char *TableName,char *FieldName); int GetTableFieldNo(int index,const char *FieldName); int GetTableFieldData(int index,char *FieldName,char *OutFormat,char *buf,int Rec); int SetTableFieldData(int index,char *FieldName,char *buf,int Rec); int GetTableFieldData(int index,int FieldNo,float *buf,int Rec,bool islink=false); int GetTableFieldData(int index,int FieldNo,char *buf,int Rec,bool islink=false); int SetTableFieldData(int index,int FieldNo,char *buf,int Rec); //////////////////////////////////////////////////////////// bool GetTDTInfo(int index,Slf_TDT* pInfo); int OpenWisTDT(const char* name); int OpenWisTDT(Slf_TDT* pInfo); int CreateWisTDT(Slf_TDT* pInfo,bool bFailExist=FALSE); DWORD GetWisTDTAllLogTime(int index,unsigned int* pLogTime,unsigned int *l=NULL); DWORD ReadWisTDT(int index, int nPointNo, unsigned int* pLogTime, TDT_DATA* buffer); DWORD WriteWisTDT(int index, int nPointNo, unsigned int LogTime, TDT_DATA* buffer, DWORD count); DWORD AddWisTDT(int index, unsigned int LogTime, TDT_DATA* buffer, DWORD count); int OpenWisFMT(const char* name); int OpenWisFMT(Slf_FMT* pInfo); int CreateWisFMT(Slf_FMT* pInfo,bool bFailExist=FALSE); void CloseWisFMT(int index); bool GetWisFMTInfo(int index,Slf_FMT* pInfo); bool SetWisTDTDepth(int index,int Count,float* pDepth1,float* pDepth2); DWORD GetWisFMTAllDepth(int index,float* pDepth); DWORD ReadWisFMT(int index, int nPointNo, float* pDep, float* buffer); DWORD WriteWisFMT(int index, int nPointNo, float dep, float* buffer, DWORD count); DWORD AddWisFMT(int index, float dep, float* buffer, DWORD count); void DeleteWisFMT(int index, int nPointNo, float dep); DWORD ReadWisTDT(int index, float Depth, unsigned int* pLogTime, TDT_DATA* buffer); bool SetWisFMTDepth(int index,int Count,float* pDepth1,float* pDepth2); DWORD ReadWisTDT(int index, float Depth, unsigned int* pLogTime, TDT_DATA* buffer,int *n); //////////////////////////////// int OpenFMT(const char* name); int OpenFMT(Slf_FMT* pInfo); int CreateFMT(Slf_FMT* pInfo,bool bFailExist=FALSE); void CloseFMT(int index); bool GetFMTInfo(int index,Slf_FMT* pInfo); DWORD GetFMTAllDepth(int index,float* pDepth); DWORD ReadFMT(int index, int nPointNo, float* pDep, float* buffer); DWORD WriteFMT(int index, int nPointNo, float dep, float* buffer, DWORD count); DWORD AddFMT(int index, float dep, float* buffer, DWORD count); void DeleteFMT(int index, int nPointNo, float dep); bool SetFMTDepth(int index,int Count,float* pDepth1,float* pDepth2); /////////////////////////////////////////// int OpenTDT(const char* name); int OpenTDT(Slf_TDT* pInfo); int CreateTDT(Slf_TDT* pInfo,bool bFailExist=FALSE); void CloseTDT(int index); DWORD ReadTDT(int index, float Depth, unsigned int* pLogTime, TDT_DATA* buffer); bool SetTDTDepth(int index,int Count,float* pDepth1,float* pDepth2); DWORD ReadTDT(int index, float Depth, unsigned int* pLogTime, TDT_DATA* buffer,int *n); DWORD GetTDTAllLogTime(int index,unsigned int* pLogTime,unsigned int *l=NULL); DWORD ReadTDT(int index, int nPointNo, unsigned int* pLogTime, TDT_DATA* buffer); DWORD WriteTDT(int index, int nPointNo, unsigned int LogTime, TDT_DATA* buffer, DWORD count); DWORD AddTDT(int index, unsigned int LogTime, TDT_DATA* buffer, DWORD count); ////////////////////////////////////// int OpenSlfFMT(const char* name); int OpenSlfFMT(Slf_FMT* pInfo); int CreateSlfFMT(Slf_FMT* pInfo,bool bFailExist=FALSE); void CloseSlfFMT(int index); bool GetSlfFMTInfo(int index,Slf_FMT* pInfo); DWORD GetSlfFMTAllDepth(int index,float* pDepth); DWORD ReadSlfFMT(int index, int nPointNo, float* pDep, float* buffer); DWORD WriteSlfFMT(int index, int nPointNo, float dep, float* buffer, DWORD count); DWORD AddSlfFMT(int index, float dep, float* buffer, DWORD count); void DeleteSlfFMT(int index, int nPointNo, float dep); bool SetSlfFMTDepth(int index,int Count,float* pDepth1,float* pDepth2); ///////////////////////////////////////////// int OpenSlfTDT(const char* name); int OpenSlfTDT(Slf_TDT* pInfo); int CreateSlfTDT(Slf_TDT* pInfo,bool bFailExist=FALSE); bool GetWisTDTInfo(int index,Slf_TDT* pInfo); bool GetSlfTDTInfo(int index,Slf_TDT* pInfo); DWORD ReadSlfTDT(int index, float Depth, unsigned int* pLogTime, TDT_DATA* buffer); bool SetSlfTDTDepth(int index,int Count,float* pDepth1,float* pDepth2); DWORD ReadSlfTDT(int index, float Depth, unsigned int* pLogTime, TDT_DATA* buffer,int *n); DWORD GetSlfTDTAllLogTime(int index,unsigned int* pLogTime,unsigned int *l=NULL); DWORD ReadSlfTDT(int index, int nPointNo, unsigned int* pLogTime, TDT_DATA* buffer); DWORD WriteSlfTDT(int index, int nPointNo, unsigned int LogTime, TDT_DATA* buffer, DWORD count); DWORD AddSlfTDT(int index, unsigned int LogTime, TDT_DATA* buffer, DWORD count); bool SetTDTInfo(int index,Slf_TDT* pInfo); bool SetSlfTDTInfo(int index,Slf_TDT* pInfo); bool SetWisTDTInfo(int index,Slf_TDT* pInfo); bool SetFMTInfo(int index,Slf_FMT* pInfo); bool SetWisFMTInfo(int index,Slf_FMT* pInfo); bool SetSlfFMTInfo(int index,Slf_FMT* pInfo); bool SetWaveInfo(int index,Slf_WAVE* pInfo); bool SetWisWaveInfo(int index,Slf_WAVE* pInfo); bool SetSlfWaveInfo(int index,Slf_WAVE* pInfo); bool SetCurveInfo(int index,Slf_CURVE* pInfo); bool SetSlfCurveInfo(int index,Slf_CURVE* pInfo); bool SetWisCurveInfo(int index,Slf_CURVE* pInfo); void GetWisMessage(Slf_FILE_MESSAGE &mssage); void SetWisMessage(Slf_FILE_MESSAGE mssage); void GetFileMessage(Slf_FILE_MESSAGE &mssage); void SetFileMessage(Slf_FILE_MESSAGE mssage); //whp add bool CorrectTableDepth(int index,float delta); int GetTableFieldData(int index,int FieldNo,int Rec,char *value,bool islink=false);//二进制数据 void GetReservedValue(float yy,int Reserved,char *buffer,char *buf,int len,bool islink=false,bool isList=false); int GetReservedIndex(char *buf,int Reserved); int SetDepthOffset(int iIndex,int no1,int j,int Count,float *dep1,float *dep2,char *buf,int &IsChange); int GetTableFieldData(int fieldcount,Slf_TABLE_FIELD *field,char *FieldName,char *InBuffer,char *buf,int reclen,bool islink=false); bool SetSlfTDTLogTime(int index,float pDepth1,unsigned int* LogTime); int GetTableFieldData(int fieldcount,Slf_TABLE_FIELD *field,char *FieldName,char *InBuffer,char *buf,float &yy,int reclen,bool islink=false); int GetTableFieldData(int index,int FieldNo,char *buf,float &yy,int Rec,bool islink=false); int GetTableFieldData(int index,char *FieldName,char *buf,float &yy,int Rec,bool islink=false); }; #endif