Esempio n. 1
0
        public override bool ProcessUnsignedIntegerValue(TAGValueMatcherState state, TAGProcessorStateBase valueSink,
                                                         TAGDictionaryItem valueType, uint value)
        {
            valueSink.ResearchData = value != 0;

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

            if (valueType.Type == TAGDataType.t4bitUInt && value <= 2) // Sonic state currently only defines three states
            {
                valueSink.ICSonic3D = (byte)value;
                result = true;;
            }

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

            if (valueType.Type == TAGDataType.t4bitUInt && value <= 3) // Check only the two least significant bits are set
            {
                valueSink.SetInAvoidZoneState((byte)value);
                result = true;
            }

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

            var testValue = value - 1; // Direction value in tag file is 1-based

            if (valueType.Type == TAGDataType.t4bitUInt &&
                (testValue >= MachineDirectionConsts.MACHINE_DIRECTION_MIN_VALUE && testValue <= MachineDirectionConsts.MACHINE_DIRECTION_MAX_VALUE))
            {
                valueSink.MachineDirection = (MachineDirection)testValue;
                result = true;
            }

            return(result);
        }
Esempio n. 5
0
 /// <summary>
 /// Processes an unicode TAG value
 /// </summary>
 /// <param name="state"></param>
 /// <param name="valueSink"></param>
 /// <param name="valueType"></param>
 /// <param name="value"></param>
 /// <returns></returns>
 public virtual bool ProcessUnicodeStringValue(TAGValueMatcherState state, TAGProcessorStateBase valueSink,
                                               TAGDictionaryItem valueType, string value) => false;
Esempio n. 6
0
 /// <summary>
 /// Processes an empty TAG value (a value with a name but no value at all - the TAG itself is the value)
 /// </summary>
 /// <param name="state"></param>
 /// <param name="valueSink"></param>
 /// <param name="valueType"></param>
 /// <returns></returns>
 public virtual bool ProcessEmptyValue(TAGValueMatcherState state, TAGProcessorStateBase valueSink,
                                       TAGDictionaryItem valueType) => false;
Esempio n. 7
0
 /// <summary>
 /// Processes an unsigned integer TAG value
 /// </summary>
 /// <param name="state"></param>
 /// <param name="valueSink"></param>
 /// <param name="valueType"></param>
 /// <param name="value"></param>
 /// <returns></returns>
 public virtual bool ProcessUnsignedIntegerValue(TAGValueMatcherState state, TAGProcessorStateBase valueSink,
                                                 TAGDictionaryItem valueType, uint value) => false;