107 lines
2.4 KiB
C
107 lines
2.4 KiB
C
|
/********************************************************************
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:2018<EFBFBD><EFBFBD>6<EFBFBD><EFBFBD>9<EFBFBD><EFBFBD>
|
|||
|
<EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>:PDSUID.h
|
|||
|
ԭʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>:ΨһID<EFBFBD><EFBFBD>
|
|||
|
|
|||
|
<EFBFBD>ļ<EFBFBD>¼:
|
|||
|
<EFBFBD>汾<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*********************************************************************/
|
|||
|
#ifndef _PDS_UID_H_
|
|||
|
#define _PDS_UID_H_
|
|||
|
|
|||
|
#include <afxwin.h>
|
|||
|
|
|||
|
//ΨһID
|
|||
|
class CPDSUID : public CObject
|
|||
|
{
|
|||
|
public:
|
|||
|
GUID guid;
|
|||
|
|
|||
|
public:
|
|||
|
CPDSUID(void);
|
|||
|
CPDSUID(const CPDSUID& rhs);
|
|||
|
virtual ~CPDSUID();
|
|||
|
CPDSUID& operator=(const CPDSUID& rhs);
|
|||
|
BOOL operator==(const CPDSUID& rhs) const;
|
|||
|
|
|||
|
//<2F><>ʼ<EFBFBD><CABC>
|
|||
|
//<2F>ر<EFBFBD>˵<EFBFBD><CBB5>:
|
|||
|
// <20><>guid<69><64>ÿһ<C3BF><D2BB><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0
|
|||
|
void Initial(void);
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD>UID,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>guid<69><64>(ÿ<>ε<EFBFBD><CEB5>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɲ<EFBFBD>ͬ<EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>)
|
|||
|
void CreateUID(void);
|
|||
|
|
|||
|
//<2F>ж<EFBFBD>this<69>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA>
|
|||
|
//<2F><><EFBFBD><EFBFBD>ֵ:
|
|||
|
// =true Ϊ<><CEAA>,guid<69><64>ÿһ<C3BF><D2BB><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0,=false <20>ǿ<EFBFBD>
|
|||
|
BOOL IsNULL(void);
|
|||
|
|
|||
|
//<2F>ж<EFBFBD>this<69>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
|
|||
|
//<2F><><EFBFBD><EFBFBD>ֵ:
|
|||
|
// =true <20><>Ч,=false <20><>Ч,<2C><>IsNULL
|
|||
|
BOOL IsValid(void);
|
|||
|
|
|||
|
//<2F><>this<69><73>ʽ<EFBFBD><CABD>Ϊ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
//<2F><><EFBFBD><EFBFBD>ֵ:
|
|||
|
// 38λ<38>ַ<EFBFBD><D6B7><EFBFBD>,<2C><><EFBFBD><EFBFBD>{77046E66-C274-42CE-85AD-5DCFA5B4D2A5}
|
|||
|
CString GetString(void);
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>guid
|
|||
|
void ParseString(CString strGUID);
|
|||
|
|
|||
|
//<2F><>id<69><64>ֵ<EFBFBD><D6B5>this
|
|||
|
void SetUID(GUID id);
|
|||
|
|
|||
|
BOOL Read(CArchive& ar);
|
|||
|
BOOL Write(CArchive& ar);
|
|||
|
|
|||
|
};
|
|||
|
CArchive& AFXAPI operator>>(CArchive& ar, CPDSUID& uid);
|
|||
|
CArchive& AFXAPI operator<<(CArchive& ar, CPDSUID& uid);
|
|||
|
|
|||
|
//ΨһID<49><44>Map
|
|||
|
class CPDSUIDMap : public CMap <CPDSUID,CPDSUID&,int,int&>
|
|||
|
{
|
|||
|
public: //<2F><>չ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD>
|
|||
|
public: //<2F><>չ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>
|
|||
|
};
|
|||
|
|
|||
|
//ΨһID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
class CPDSUIDList : public CList<CPDSUID,CPDSUID&>
|
|||
|
{
|
|||
|
public: //<2F><>չ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD>
|
|||
|
public: //<2F><>չ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>
|
|||
|
|
|||
|
CPDSUIDList& operator=(CPDSUIDList& rhs); //<2F><>ֵ
|
|||
|
CPDSUID& operator[](int iIndex); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD>
|
|||
|
|
|||
|
void Read(CArchive& ar);
|
|||
|
void Write(CArchive& ar);
|
|||
|
};
|
|||
|
CArchive& AFXAPI operator>>(CArchive& ar, CPDSUIDList& listUID);
|
|||
|
CArchive& AFXAPI operator<<(CArchive& ar, CPDSUIDList& listUID);
|
|||
|
|
|||
|
//ΨһID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
class CPDSUIDListArray : public CArray<CPDSUIDList,CPDSUIDList>
|
|||
|
{
|
|||
|
public: //<2F><>չ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD>
|
|||
|
public: //<2F><>չ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>
|
|||
|
|
|||
|
CPDSUIDListArray& operator=(CPDSUIDListArray& rhs); //<2F><>ֵ
|
|||
|
|
|||
|
void Read(CArchive& ar);
|
|||
|
void Write(CArchive& ar);
|
|||
|
};
|
|||
|
CArchive& AFXAPI operator>>(CArchive& ar, CPDSUIDListArray& alUID);
|
|||
|
CArchive& AFXAPI operator<<(CArchive& ar, CPDSUIDListArray& alUID);
|
|||
|
|
|||
|
template<>
|
|||
|
AFX_INLINE UINT AFXAPI HashKey(CPDSUID& key)
|
|||
|
{
|
|||
|
return HashKey(key.guid.Data1); // <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>unsigned long<6E><67><EFBFBD><EFBFBD>
|
|||
|
}
|
|||
|
|
|||
|
#endif // _PDS_UID_H_
|