summaryrefslogtreecommitdiffstats
path: root/src/libs/7zip/win/CPP/7zip/Compress/RarCodecsRegister.cpp
blob: e3f6a05c4683c7f0a4dbe4f46026843739778d5a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// RarCodecsRegister.cpp

#include "StdAfx.h"

#include "../Common/RegisterCodec.h"

#include "Rar1Decoder.h"
#include "Rar2Decoder.h"
#include "Rar3Decoder.h"

#define CREATE_CODEC(x) static void *CreateCodec ## x() { return (void *)(ICompressCoder *)(new NCompress::NRar ## x::CDecoder); }

CREATE_CODEC(1)
CREATE_CODEC(2)
CREATE_CODEC(3)

#define RAR_CODEC(x, name) { CreateCodec ## x, 0, 0x040300 + x, L"Rar" name, 1, false }

static CCodecInfo g_CodecsInfo[] =
{
  RAR_CODEC(1, L"1"),
  RAR_CODEC(2, L"2"),
  RAR_CODEC(3, L"3"),
};

REGISTER_CODECS(Rar)