59 lines
1.2 KiB
C++
59 lines
1.2 KiB
C++
#if !defined(_SMTMEMOFILE_H__INCLUDED_)
|
|
#define _SMTMEMOFILE_H__INCLUDED_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
#include "MemoFile.h"
|
|
|
|
class CSMTMemoFile : public CMemoFile
|
|
{
|
|
DECLARE_DYNAMIC(CSMTMemoFile)
|
|
|
|
// Constructors
|
|
public:
|
|
CSMTMemoFile();
|
|
|
|
// Attributes
|
|
public:
|
|
SMT_HEAD m_SMTHead;
|
|
|
|
public:
|
|
~CSMTMemoFile();
|
|
|
|
virtual BOOL Open(LPCTSTR lpszName, UINT nOpenFlag);
|
|
virtual void Close();
|
|
|
|
virtual UINT GetMemoFileType();
|
|
|
|
virtual BOOL ReadMemoRecord(DBF_ULONG lOffsetRec, DBF_LONG& nLen, CTDbfString& strMemo);
|
|
virtual BOOL ReadMemoRecord(DBF_ULONG lOffsetRec, DBF_LONG& nLen, unsigned char** pMemoData);
|
|
|
|
virtual BOOL WriteMemoRecord(DBF_ULONG& lOffsetRec, DBF_LONG& lLenMemo, CTDbfString& strMemo);
|
|
|
|
#ifdef _DEBUG
|
|
virtual void AssertValid() const;
|
|
virtual void Dump(CDumpContext& dc) const;
|
|
#endif
|
|
|
|
|
|
protected:
|
|
BOOL ReadHeader();
|
|
BOOL WriteHeader();
|
|
|
|
private:
|
|
|
|
DBF_LONG AddMemoRecord(CTDbfString& strMemo);
|
|
|
|
void UpdateMemoRecord(DBF_ULONG lOffsetRec, CTDbfString& strMemo);
|
|
|
|
void DeleteMemoRecord(DBF_ULONG lDelRec, DBF_UINT nDelBlockCnt);
|
|
|
|
BOOL UndeleteMemoRecord(DBF_ULONG& lOffsetRec, CTDbfString& strMemo);
|
|
};
|
|
|
|
//{{AFX_INSERT_LOCATION}}
|
|
#endif // !defined(_MEMOFILE_H__INCLUDED_)
|
|
|