You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kev/Drawer/SSBase/MxnFormat/BinaryPosition.h

50 lines
1.4 KiB
C

1 month ago
//////////////////////////////////////////////////////////////////////////////
//<2F>ļ<EFBFBD>: SegY<67><59>ʽ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
//
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д:
//<2F><><EFBFBD>ڣ<EFBFBD>2005-12-07
//
//
/////////////////////////////////////////////////////////////////////////////
#pragma once
#include "..\DrawLocal\FileSegy.h"
//CFileSegy<67>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//enum enDataType
//{
// typeIbmFloat = 1, // 4-byte IBM floating-point
// typeIbmLong = 2, // 4-byte, two's complement integer
// typeIbmShort = 3, // 2-byte, two's complement integer
// typeIbmGainLong = 4, // 4-byte fixed-point with gain (obsolete)
// typeIeeFloat = 5, // IEEE floating-point
// // 6
// // 7 Ϊ<>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD>е<EFBFBD><D0B5><EFBFBD>չ
// typeChar = 8, // signed char (1 byte)
// typeIeeShort = 9, //
// typeIeeLong = 10, //
// typeIeeDouble = 11, // IEEE˫<45><CBAB><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD>8<EFBFBD>ֽڣ<D6BD>
//};
class AFX_EXT_CLASS CBinaryPosition
{
public:
CBinaryPosition(void);
virtual ~CBinaryPosition(void);
void SetAt(long _p, CFileSegy::EDataType _c, BOOL _ir);
int Read(CString name, CString section, CString key);
void Write(CString name, CString section, CString key);
int Read(CFile& fr, const short& ver);
void Write(CFile& fw, const short& ver);
void Serialize(CArchive& ar, const short &ver);
long position; //<2F>ļ<EFBFBD><C4BC><EFBFBD>ָ<EFBFBD>붨λ(<28>ֽ<EFBFBD>)
CFileSegy::EDataType code; //<2F><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
BOOL IsReverse; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ת
//long offset;
void operator=(CBinaryPosition& bp);
};