1*3ac0a46fSAndroid Build Coastguard Worker // Copyright 2016 The PDFium Authors 2*3ac0a46fSAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*3ac0a46fSAndroid Build Coastguard Worker // found in the LICENSE file. 4*3ac0a46fSAndroid Build Coastguard Worker 5*3ac0a46fSAndroid Build Coastguard Worker // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6*3ac0a46fSAndroid Build Coastguard Worker 7*3ac0a46fSAndroid Build Coastguard Worker #ifndef FXBARCODE_CBC_CODE128_H_ 8*3ac0a46fSAndroid Build Coastguard Worker #define FXBARCODE_CBC_CODE128_H_ 9*3ac0a46fSAndroid Build Coastguard Worker 10*3ac0a46fSAndroid Build Coastguard Worker #include "core/fxcrt/widestring.h" 11*3ac0a46fSAndroid Build Coastguard Worker #include "fxbarcode/BC_Library.h" 12*3ac0a46fSAndroid Build Coastguard Worker #include "fxbarcode/cbc_onecode.h" 13*3ac0a46fSAndroid Build Coastguard Worker 14*3ac0a46fSAndroid Build Coastguard Worker class CBC_OnedCode128Writer; 15*3ac0a46fSAndroid Build Coastguard Worker class CFX_Matrix; 16*3ac0a46fSAndroid Build Coastguard Worker 17*3ac0a46fSAndroid Build Coastguard Worker class CBC_Code128 final : public CBC_OneCode { 18*3ac0a46fSAndroid Build Coastguard Worker public: 19*3ac0a46fSAndroid Build Coastguard Worker explicit CBC_Code128(BC_TYPE type); 20*3ac0a46fSAndroid Build Coastguard Worker ~CBC_Code128() override; 21*3ac0a46fSAndroid Build Coastguard Worker 22*3ac0a46fSAndroid Build Coastguard Worker // CBC_OneCode: 23*3ac0a46fSAndroid Build Coastguard Worker BC_TYPE GetType() override; 24*3ac0a46fSAndroid Build Coastguard Worker bool Encode(WideStringView contents) override; 25*3ac0a46fSAndroid Build Coastguard Worker bool RenderDevice(CFX_RenderDevice* device, 26*3ac0a46fSAndroid Build Coastguard Worker const CFX_Matrix& matrix) override; 27*3ac0a46fSAndroid Build Coastguard Worker 28*3ac0a46fSAndroid Build Coastguard Worker private: 29*3ac0a46fSAndroid Build Coastguard Worker CBC_OnedCode128Writer* GetOnedCode128Writer(); 30*3ac0a46fSAndroid Build Coastguard Worker 31*3ac0a46fSAndroid Build Coastguard Worker WideString m_renderContents; 32*3ac0a46fSAndroid Build Coastguard Worker }; 33*3ac0a46fSAndroid Build Coastguard Worker 34*3ac0a46fSAndroid Build Coastguard Worker #endif // FXBARCODE_CBC_CODE128_H_ 35