xref: /aosp_15_r20/external/lzma/CPP/7zip/Compress/BcjCoder.cpp (revision f6dc9357d832569d4d1f5d24eacdb3935a1ae8e6)
1*f6dc9357SAndroid Build Coastguard Worker // BcjCoder.cpp
2*f6dc9357SAndroid Build Coastguard Worker 
3*f6dc9357SAndroid Build Coastguard Worker #include "StdAfx.h"
4*f6dc9357SAndroid Build Coastguard Worker 
5*f6dc9357SAndroid Build Coastguard Worker #include "BcjCoder.h"
6*f6dc9357SAndroid Build Coastguard Worker 
7*f6dc9357SAndroid Build Coastguard Worker namespace NCompress {
8*f6dc9357SAndroid Build Coastguard Worker namespace NBcj {
9*f6dc9357SAndroid Build Coastguard Worker 
Z7_COM7F_IMF(CCoder2::Init ())10*f6dc9357SAndroid Build Coastguard Worker Z7_COM7F_IMF(CCoder2::Init())
11*f6dc9357SAndroid Build Coastguard Worker {
12*f6dc9357SAndroid Build Coastguard Worker   _pc = 0;
13*f6dc9357SAndroid Build Coastguard Worker   _state = Z7_BRANCH_CONV_ST_X86_STATE_INIT_VAL;
14*f6dc9357SAndroid Build Coastguard Worker   return S_OK;
15*f6dc9357SAndroid Build Coastguard Worker }
16*f6dc9357SAndroid Build Coastguard Worker 
Z7_COM7F_IMF2(UInt32,CCoder2::Filter (Byte * data,UInt32 size))17*f6dc9357SAndroid Build Coastguard Worker Z7_COM7F_IMF2(UInt32, CCoder2::Filter(Byte *data, UInt32 size))
18*f6dc9357SAndroid Build Coastguard Worker {
19*f6dc9357SAndroid Build Coastguard Worker   const UInt32 processed = (UInt32)(size_t)(_convFunc(data, size, _pc, &_state) - data);
20*f6dc9357SAndroid Build Coastguard Worker   _pc += processed;
21*f6dc9357SAndroid Build Coastguard Worker   return processed;
22*f6dc9357SAndroid Build Coastguard Worker }
23*f6dc9357SAndroid Build Coastguard Worker 
24*f6dc9357SAndroid Build Coastguard Worker }}
25