Skip to content

Commit

Permalink
More work on Encoder
Browse files Browse the repository at this point in the history
  • Loading branch information
glinscott committed Nov 26, 2011
1 parent 0c8006b commit de054cb
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 1 deletion.
48 changes: 47 additions & 1 deletion encoder.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
var RangeCoder = require('./rangeCoder');
var BitEncoder = require('./bitEncoder');

function Encoder() {
Expand All @@ -6,7 +7,7 @@ function Encoder() {
var kNumStates = 12;
var kDefaultDictionaryLogSize = 22;
var kNumFastBytesDefault = 0x20;

var kNumLowLenBits = 3;
var kNumMidLenBits = 3;
var kNumHighLenBits = 8;
Expand Down Expand Up @@ -291,6 +292,51 @@ function Encoder() {
};

this.LenPriceTableEncoder.prototype = new this.LenEncoder();

this.Optimal = function() {
};

var _optimum = [];
var _matchFinder = null;
var _rangeEncoder = new RangeCoder.Encoder();

var _isMatch = [], _isRep = [], _isRepG0 = [], _isRepG1 = [];
var _isRepG2 = [], _isRep0Long = [], _posSlotEncoder = [];
var _posEncoders = [], _posAlignEncoder = [];

var _lenEncoder = new this.LenPriceTableEncoder();
var _repMatchLenEncoder = new this.LenPriceTableEncoder();

var _literalEncoder = new this.LiteralEncoder();

var _matchDistances = [];
var _numFastBytes = kNumFastBytesDefault;
var _longestMatchLength, _numDistancePairs;
var _additionalOffset, _optimumEndIndex, _optimumCurrentIndex, _longestMatchWasFound;

var _posSlotPrices = [], _distancePrices = [], _alignPrices = [];
var _alignPriceCount;

var _distTableSize = kDefaultDictionaryLogSize * 2;

var _posStateBits = 2;
var _posStateMask = 4 - 1;
var _numLiteralPosStateBits = 0;
var _numLiteralContextBits = 3;

var _dictionarySize = 1 << kDefaultDictionaryLogSize;
var _dictionarySizePrev = 0xFFFFFFFF;
var _numFastBytesPrev = 0xFFFFFFFF;

var nowPos64, finished, _inStream;
var _matchFinderType = 'BT4', _writeEndMark = false;
var _needReleaseMFStream;

this.create = function() {
if (this._matchFinder === null) {

}
};

this.code = function() {
var progressPosValuePrev = nowPos;
Expand Down
1 change: 1 addition & 0 deletions test.js
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,7 @@ var testEncoder = function() {
lenEncoder.encode(rangeEncoder, 1, 0);
lenEncoder.encode(rangeEncoder, 20, 0);
lenEncoder.encode(rangeEncoder, 199, 0);
rangeEncoder.finish();

var lenPriceTableEncoder = new encoder.LenPriceTableEncoder();
lenPriceTableEncoder.init();
Expand Down

0 comments on commit de054cb

Please sign in to comment.