|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F>ļ<EFBFBD>: SegY<67>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
|
|
|
|
|
|
//
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д: 2011-4-1
|
|
|
|
|
|
//
|
|
|
|
|
|
//
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
#include "SeisSampleInfo.h"
|
|
|
|
|
|
#include "SeisTraceData.h"
|
|
|
|
|
|
|
|
|
|
|
|
namespace NSeis
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵĶ<DDB5>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
|
|
|
|
|
|
class AFX_EXT_CLASS CSeisTraceReader
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CSeisTraceReader();
|
|
|
|
|
|
~CSeisTraceReader(void);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>ͷָ<CDB7>룬<EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*******************
|
|
|
|
|
|
void SetSampleInfo(unsigned short sn, unsigned short si, CFileSegy::EDataType type, BOOL bSwap);
|
|
|
|
|
|
void SetSampleInfo(const CSeisSampleInfo& info);
|
|
|
|
|
|
|
|
|
|
|
|
CSeisTraceData* GetTraceData() { return m_pData; }
|
|
|
|
|
|
CSeisSampleInfo& GetSampleInfo(){ return m_sampleInfo; }
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>ͷ<EFBFBD><CDB7>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>룬<EFBFBD><EBA3AC><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1>ʹ<EFBFBD><CAB9>Attachʱ<68><CAB1><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5>øú<C3B8><C3BA><EFBFBD>
|
|
|
|
|
|
bool Initialize();
|
|
|
|
|
|
void Clear();
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>ȡһ<C8A1><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>Ҫ<EFBFBD><D2AA><EFBFBD>ⲿ<EFBFBD><E2B2BF><EFBFBD><EFBFBD>
|
|
|
|
|
|
int Read(CFileSegy& fr);
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD>m_sampleInfo<66>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䷽<EFBFBD><E4B7BD><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>ʹ<EFBFBD>øú<C3B8><C3BA><EFBFBD>ǰ<EFBFBD><C7B0>Ҫ<EFBFBD><D2AA>λ<EFBFBD><CEBB><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>ʼλ<CABC><CEBB>
|
|
|
|
|
|
int ReadRange(CFileSegy& fr);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>ָ<EFBFBD><D6B8>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>а<D0B0><F3B6A8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Detach<63><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>Ը<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
void Attach(CSeisTraceData* pData);
|
|
|
|
|
|
CSeisTraceData* Detach(void); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>룬<EFBFBD><EBA3AC><EFBFBD>ڲ<EFBFBD><DAB2>ÿ<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>øõ<C3B8><C3B5>е<EFBFBD>nIndex<65><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
|
inline double GetValue(int nIndex) { return m_pData->GetValue(nIndex, m_sampleInfo.GetFormatCode()); }
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
CSeisSampleInfo m_sampleInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>壬<EFBFBD><E5A3AC>Ҫ<EFBFBD><D2AA>ǰָ<C7B0><D6B8>
|
|
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
|
CSeisTraceData* m_pData; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
} //namespace NSeis
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|