Пример #1
0
        protected override void OnCompile()
        {
            this.Append(new UB(1, Convert.ToInt32(this.hasAdd)));
            this.Append(new UB(1, Convert.ToInt32(this.hasMult)));
            BitCounter.Init();
            if (this.hasAdd)
            {
                BitCounter.Push(SB.NumBits(this.aR));
                BitCounter.Push(SB.NumBits(this.aG));
                BitCounter.Push(SB.NumBits(this.aB));
            }
            if (this.hasMult)
            {
                BitCounter.Push(SB.NumBits(this.mR));
                BitCounter.Push(SB.NumBits(this.mG));
                BitCounter.Push(SB.NumBits(this.mB));
            }
            int maxim = BitCounter.Maxim;

            this.Append(new UB(4, maxim));
            if (this.hasAdd)
            {
                this.Append(new SB(maxim, this.aR));
                this.Append(new SB(maxim, this.aG));
                this.Append(new SB(maxim, this.aB));
            }
            if (this.hasMult)
            {
                this.Append(new SB(maxim, this.mR));
                this.Append(new SB(maxim, this.mG));
                this.Append(new SB(maxim, this.mB));
            }
            base.OnCompile();
        }
Пример #2
0
        protected override void OnCompile()
        {
            int maxim;

            this.Append(new UB(1, 1));
            this.Append(new UB(1, 1));
            if (this.General)
            {
                BitCounter.Init();
                BitCounter.Push(SB.NumBits(this.posX));
                BitCounter.Push(SB.NumBits(this.posY));
                maxim = BitCounter.Maxim;
            }
            else
            {
                maxim = SB.NumBits(this.pos);
            }
            this.Append(new UB(4, maxim - 2));
            this.Append(new UB(1, Convert.ToInt32(this.General)));
            if (this.General)
            {
                this.Append(new SB(maxim, this.posX));
                this.Append(new SB(maxim, this.posY));
            }
            else
            {
                this.Append(new UB(1, Convert.ToInt32(this.isVert)));
                this.Append(new SB(maxim, this.pos));
            }
        }
Пример #3
0
        protected override void OnCompile()
        {
            int val  = 0;
            int num2 = 0;
            int num3 = 0;

            if (this.LineIndex > 0)
            {
                val = 1;
            }
            if (this.FillIndex0 > 0)
            {
                num2 = 1;
            }
            if (this.FillIndex1 > 0)
            {
                num3 = 1;
            }
            this.Append(new UB(1, 0));
            this.Append(new UB(1, 0));
            this.Append(new UB(1, val));
            this.Append(new UB(1, num2));
            this.Append(new UB(1, num3));
            this.Append(new UB(1, Convert.ToInt32(this.MoveTo)));
            if (this.MoveTo)
            {
                BitCounter.Init();
                BitCounter.Push(SB.NumBits(this.MoveX));
                BitCounter.Push(SB.NumBits(this.MoveY));
                int maxim = BitCounter.Maxim;
                this.Append(new UB(5, maxim));
                this.Append(new SB(maxim, this.MoveX));
                this.Append(new SB(maxim, this.MoveY));
            }
            if (num2 == 1)
            {
                this.Append(new UB(this.Parent.NumFillBits, this.FillIndex0));
            }
            if (num3 == 1)
            {
                this.Append(new UB(this.Parent.NumFillBits, this.FillIndex1));
            }
            if (val == 1)
            {
                this.Append(new UB(this.Parent.NumLineBits, this.LineIndex));
            }
        }
Пример #4
0
        protected override void OnCompile()
        {
            this.Append(new UB(1, 1));
            this.Append(new UB(1, 0));
            BitCounter.Init();
            BitCounter.Push(SB.NumBits(this.posX));
            BitCounter.Push(SB.NumBits(this.posY));
            BitCounter.Push(SB.NumBits(this.anchX));
            BitCounter.Push(SB.NumBits(this.anchY));
            int maxim = BitCounter.Maxim;

            this.Append(new UB(4, maxim - 2));
            this.Append(new SB(maxim, this.posX));
            this.Append(new SB(maxim, this.posY));
            this.Append(new SB(maxim, this.anchX));
            this.Append(new SB(maxim, this.anchY));
        }