15 #include "CrossLink.h" 16 using namespace CLink;
19 typedef void (*FRegist)( LPCTSTR _Address );
22 typedef std::map<std::string,std::string> SBookList;
23 typedef std::map<std::string,std::string>::iterator SBookListIt;
30 typedef std::map<std::string, SGroupIndex *> SGroupIndexList;
31 typedef std::map<std::string, SGroupIndex *>::iterator SGroupIndexListIt;
34 #define HEADER_MAX_LENGTH 1028 50 char Path[ _MAX_PATH ];
68 typedef bool (*FEachPath)(
SChainItem *_Node,
char *_Path,
void *_UserData );
75 static SGroupIndexList *GroupIndexList;
81 static SGroupIndex *GetGroupIndex(
const char *_Path );
90 static bool CreateCallBack( DWORD _UserData,
const char *_Path,
const char *_FileName,
const WIN32_FIND_DATA *_FindData );
96 static bool IndexCallBack( DWORD _UserData,
const char *_Path,
const char *_FileName,
const WIN32_FIND_DATA *_FindData );
102 static bool SubCallBack( DWORD _UserData,
const char *_Path,
const char *_FileName,
const WIN32_FIND_DATA *_FindData );
107 void CreatePathList( LPCTSTR _BasePath );
109 void DeletePathList();
113 bool InsertPathList( std::string _Path );
120 static bool SearchGroup( LPCTSTR _Path,
const char *_Email,
char *_Name,
size_t _Length );
132 bool ForEachTrace(
SChainItem *_Root,
const char *_Path, FEachPath _UserFunc,
void *_UserData );
138 bool ForEachNext(
SChainItem *_Root,
const char *_Path, FEachPath _UserFunc,
void *_UserData );
143 static bool Finder(
SChainItem *_Node,
char *_Path,
void *_UserData );
148 static bool PathFinder(
SChainItem *_Node,
char *_Path,
void *_UserData );
154 static bool CardFinder(
SChainItem *_Node,
char *_Path,
void *_UserData );
159 static bool SearchGroup( LPCTSTR _Path,
const char *_Email,
SVcardItem **_Item );
169 virtual ‾SAddressBook();
179 bool Search(
const char *_Email,
char *_Name,
size_t _Length, LPCTSTR _Book = NULL );
184 bool SearchVCard(
const char *_Email,
SVcardItem **_Card, LPCTSTR _Book );
192 std::string GetCurrentBook( LPCSTR _DataFolder, LPCSTR _GetCurrentFolder );
196 bool ForEach( FEachPath _UserFunction,
void *_UserData );
201 static void CopyName(
char *_Name,
size_t _Length,
char *_Base );
206 #endif // _ADDRBOOK_H SChainItem * Node
リンクノード
Definition: Addrbook.h:49
const char * Email
メールアドレス
Definition: Addrbook.h:56
const char * Email
メールアドレス
Definition: Addrbook.h:40
トレース検索用構造体.
Definition: Addrbook.h:38
SChainItem * PathList
パスリスト
Definition: Addrbook.h:72
SBookList BookList
アドレスブックリスト(2010/09/10 追加)
Definition: Addrbook.h:71
SVcardItem ** Card
カード
Definition: Addrbook.h:57
アドレスブッククラス.
Definition: Addrbook.h:62
size_t Length
長さ
Definition: Addrbook.h:42
Becky API クラス
Definition: BeckyApi.h:96
const char * Book
ブック
Definition: Addrbook.h:48
VCardトレース検索用構造体.
Definition: Addrbook.h:54
VCARD データ
Definition: VCard.h:16
char * Name
名前
Definition: Addrbook.h:41
関連付け検索用構造体.
Definition: Addrbook.h:46
SChainItem * GetPathList()
パスリスト取得
Definition: Addrbook.h:203
Definition: CrossLink.h:12
Group.idx クラス
Definition: GroupIndex.h:30
4方向リンク定義構造
Definition: CrossLink.h:16