rlm@1: // RarCodecsRegister.cpp rlm@1: rlm@1: #include "StdAfx.h" rlm@1: rlm@1: #include "../Common/RegisterCodec.h" rlm@1: rlm@1: #include "Rar1Decoder.h" rlm@1: #include "Rar2Decoder.h" rlm@1: #include "Rar3Decoder.h" rlm@1: rlm@1: #define CREATE_CODEC(x) static void *CreateCodec ## x() { return (void *)(ICompressCoder *)(new NCompress::NRar ## x::CDecoder); } rlm@1: rlm@1: CREATE_CODEC(1) rlm@1: CREATE_CODEC(2) rlm@1: CREATE_CODEC(3) rlm@1: rlm@1: #define RAR_CODEC(x, name) { CreateCodec ## x, 0, 0x040300 + x, L"Rar" name, 1, false } rlm@1: rlm@1: static CCodecInfo g_CodecsInfo[] = rlm@1: { rlm@1: RAR_CODEC(1, L"1"), rlm@1: RAR_CODEC(2, L"2"), rlm@1: RAR_CODEC(3, L"3"), rlm@1: }; rlm@1: rlm@1: REGISTER_CODECS(Rar)