Ejemplo n.º 1
0
        public void Test_TAGProcessorStateBase_SetICMDPValue()
        {
            var state = new TAGProcessorStateBase();

            Assert.True(state.ICMDPValues.GetLatest() == CellPassConsts.NullMDP, "Initial value incorrect");
            state.SetICMDPValue(100);
            Assert.True(state.ICMDPValues.NumAttrs == 2 && state.ICMDPValues.GetLatest() == 100, "Initial value incorrect");
        }
Ejemplo n.º 2
0
        public override bool ProcessEmptyValue(TAGValueMatcherState state, TAGProcessorStateBase valueSink,
                                               TAGDictionaryItem valueType)
        {
            state.HaveSeenAnAbsoluteMDP = false;

            valueSink.SetICMDPValue(CellPassConsts.NullMDP);

            return(true);
        }
Ejemplo n.º 3
0
        public override bool ProcessUnsignedIntegerValue(TAGValueMatcherState state, TAGProcessorStateBase valueSink,
                                                         TAGDictionaryItem valueType, uint value)
        {
            bool result = false;

            if (valueType.Type == TAGDataType.t12bitUInt)
            {
                state.HaveSeenAnAbsoluteMDP = true;

                valueSink.SetICMDPValue((short)value);
                result = true;
            }

            return(result);
        }
Ejemplo n.º 4
0
        public override bool ProcessIntegerValue(TAGValueMatcherState state, TAGProcessorStateBase valueSink,
                                                 TAGDictionaryItem valueType, int value)
        {
            bool result = false;

            if (state.HaveSeenAnAbsoluteMDP &&
                (valueType.Type == TAGDataType.t4bitInt || valueType.Type == TAGDataType.t8bitInt))
            {
                if (((short)(valueSink.ICMDPValues.GetLatest()) + value) >= 0)
                {
                    valueSink.SetICMDPValue((short)((short)(valueSink.ICMDPValues.GetLatest()) + value));
                }
                {
                    result = true;
                }
            }

            return(result);
        }