示例#1
0
int ONVIF::SystemFactoryDefault::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QObject::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 2)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 2;
    } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 2)
            *reinterpret_cast<int*>(_a[0]) = -1;
        _id -= 2;
    }
#ifndef QT_NO_PROPERTIES
      else if (_c == QMetaObject::ReadProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0: *reinterpret_cast< FactoryDefault*>(_v) = factoryDefault(); break;
        case 1: *reinterpret_cast< bool*>(_v) = result(); break;
        }
        _id -= 2;
    } else if (_c == QMetaObject::WriteProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0: setFactoryDefault(*reinterpret_cast< FactoryDefault*>(_v)); break;
        case 1: setResult(*reinterpret_cast< bool*>(_v)); break;
        }
        _id -= 2;
    } else if (_c == QMetaObject::ResetProperty) {
        _id -= 2;
    } else if (_c == QMetaObject::QueryPropertyDesignable) {
        _id -= 2;
    } else if (_c == QMetaObject::QueryPropertyScriptable) {
        _id -= 2;
    } else if (_c == QMetaObject::QueryPropertyStored) {
        _id -= 2;
    } else if (_c == QMetaObject::QueryPropertyEditable) {
        _id -= 2;
    } else if (_c == QMetaObject::QueryPropertyUser) {
        _id -= 2;
    } else if (_c == QMetaObject::RegisterPropertyMetaType) {
        if (_id < 2)
            *reinterpret_cast<int*>(_a[0]) = -1;
        _id -= 2;
    }
#endif // QT_NO_PROPERTIES
    return _id;
}
示例#2
0
void AlgorithmRepository::readFromEEPROM()
{
#ifndef DEBUGGING

	WORD addr= 0;
	BYTE c1= eeprom_read_byte( (uint8_t *)addr++ );
	BYTE c2= eeprom_read_byte( (uint8_t *)addr++ );
	BYTE c3= eeprom_read_byte( (uint8_t *)addr++ );

#ifdef DEBUG_EEPROM
	out.printf_P( PSTR("EEPROM:%bx %bx %bx"), c1, c2, c3 );
#endif

	if( c1 == 'J' && c2 == 'P' && c3 == ((RECEIVER_CHANNELS << 5) | OUTPUT_CHANNELS))
	{
    BYTE i;
    
		eeprom_read_block( &programArray, (const void *)addr, (size_t)sizeof( programArray ) );
		addr += sizeof( programArray );
		eeprom_read_block( &inputChannel, (const void *)addr, (size_t)sizeof( inputChannel ) );
		addr += sizeof( inputChannel );

		for( i = 0; i < RECEIVER_CHANNELS; i++)
		{
			Receiver::setChannelMin( i, eeprom_read_word( (const uint16_t *)addr ) );
			addr += sizeof( WORD );
			Receiver::setChannelMax( i, eeprom_read_word( (const uint16_t *)addr ) );
			addr += sizeof( WORD );
		}

		Receiver::setChannelModeByte( eeprom_read_byte( (const uint8_t *) addr) );
    addr++;
    Adc::setLimit( eeprom_read_word((const uint16_t *) addr) );
    
#ifdef DEBUG_EEPROM
  out.printf_P(PSTR("EEPROM Size: %wx\r\n"), addr);
#endif
    
	  for( i=0;i < PWM_CHANNELS;i++ )
	  {
  	  for( BYTE ii= 0;ii < 2+MAX_SEGMENTS;ii++)
  	  {
        if( programArray[i][ii].algorithm >= ALGORITHMS_PWM )
        {
          programArray[i][ii].algorithm= 0;
        }
      }
    }          
	  for( i=PWM_CHANNELS;i < OUTPUT_CHANNELS;i++ )
	  {
  	  for( BYTE ii= 0;ii < 2+MAX_SEGMENTS;ii++)
  	  {
    	  if( programArray[i][ii].algorithm >= ALGORITHMS_SWITCH )
    	  {
      	  programArray[i][ii].algorithm= 0;
    	  }
  	  }
	  }
	}
	else
	{
		factoryDefault();
	}
#endif
}