Mercurial > vba-linux
view src/win32/7zip/7z/CPP/7zip/Common/RegisterArc.h @ 1:f9f4f1b99eed
importing src directory
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Sat, 03 Mar 2012 10:31:27 -0600 |
parents | |
children |
line wrap: on
line source
1 // RegisterArc.h3 #ifndef __REGISTERARC_H4 #define __REGISTERARC_H6 #include "../Archive/IArchive.h"7 #include "DeclareArcs.h"9 typedef IInArchive * (*CreateInArchiveP)();10 typedef IOutArchive * (*CreateOutArchiveP)();12 struct CArcInfo13 {14 const wchar_t *Name;15 const wchar_t *Ext;16 const wchar_t *AddExt;17 Byte ClassId;18 Byte Signature[16];19 int SignatureSize;20 bool KeepName;21 CreateInArchiveP CreateInArchive;22 CreateOutArchiveP CreateOutArchive;23 };25 void RegisterArc(const CArcInfo *arcInfo);27 #define REGISTER_ARC(x) CRegister##x::CRegister##x() { RegisterArc(&g_ArcInfo); } \28 CRegister##x g_RegisterArc##x;30 #define REGISTER_ARCN(x,n) CRegister##x##n::CRegister##x##n() { RegisterArc(&g_ArcInfo##n); } \31 CRegister##x##n g_RegisterArc##n##x;33 #endif