Home | History | Annotate | Download | only in 7zip
      1 // IDecl.h
      2 
      3 #ifndef __IDECL_H
      4 #define __IDECL_H
      5 
      6 #include "../Common/MyUnknown.h"
      7 
      8 #define k_7zip_GUID_Data1 0x23170F69
      9 #define k_7zip_GUID_Data2 0x40C1
     10 
     11 #define k_7zip_GUID_Data3_Common  0x278A
     12 
     13 #define k_7zip_GUID_Data3_Decoder 0x2790
     14 #define k_7zip_GUID_Data3_Encoder 0x2791
     15 #define k_7zip_GUID_Data3_Hasher  0x2792
     16 
     17 
     18 #define DECL_INTERFACE_SUB(i, base, groupId, subId) \
     19   DEFINE_GUID(IID_ ## i, \
     20     k_7zip_GUID_Data1, \
     21     k_7zip_GUID_Data2, \
     22     k_7zip_GUID_Data3_Common, \
     23     0, 0, 0, (groupId), 0, (subId), 0, 0); \
     24   struct i: public base
     25 
     26 #define DECL_INTERFACE(i, groupId, subId) DECL_INTERFACE_SUB(i, IUnknown, groupId, subId)
     27 
     28 #endif
     29