Ejemplo n.º 1
0
/**
 * Constructor
 */
PathPlan::PathPlan(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList WaypointCountElemNames;
    WaypointCountElemNames.append("0");
    fields.append( new UAVObjectField(QString("WaypointCount"), QString(""), UAVObjectField::UINT16, WaypointCountElemNames, QStringList(), QString("")));
    QStringList PathActionCountElemNames;
    PathActionCountElemNames.append("0");
    fields.append( new UAVObjectField(QString("PathActionCount"), QString(""), UAVObjectField::UINT16, PathActionCountElemNames, QStringList(), QString("")));
    QStringList CrcElemNames;
    CrcElemNames.append("0");
    fields.append( new UAVObjectField(QString("Crc"), QString(""), UAVObjectField::UINT8, CrcElemNames, QStringList(), QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 2
0
/**
 * Constructor
 */
GyroState::GyroState(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList xElemNames;
    xElemNames.append("0");
    fields.append( new UAVObjectField(QString("x"), QString("deg/s"), UAVObjectField::FLOAT32, xElemNames, QStringList(), QString("")));
    QStringList yElemNames;
    yElemNames.append("0");
    fields.append( new UAVObjectField(QString("y"), QString("deg/s"), UAVObjectField::FLOAT32, yElemNames, QStringList(), QString("")));
    QStringList zElemNames;
    zElemNames.append("0");
    fields.append( new UAVObjectField(QString("z"), QString("deg/s"), UAVObjectField::FLOAT32, zElemNames, QStringList(), QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
/**
 * Constructor
 */
PoiLearnSettings::PoiLearnSettings(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList InputElemNames;
    InputElemNames.append("0");
    QStringList InputEnumOptions;
    InputEnumOptions.append("Accessory0");
    InputEnumOptions.append("Accessory1");
    InputEnumOptions.append("Accessory2");
    InputEnumOptions.append("Accessory3");
    InputEnumOptions.append("Accessory4");
    InputEnumOptions.append("Accessory5");
    InputEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("Input"), QString("channel"), UAVObjectField::ENUM, InputElemNames, InputEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
/**
 * Constructor
 */
VelocityDesired::VelocityDesired(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList NorthElemNames;
    NorthElemNames.append("0");
    fields.append( new UAVObjectField(QString("North"), QString("m/s"), UAVObjectField::FLOAT32, NorthElemNames, QStringList(), QString("")));
    QStringList EastElemNames;
    EastElemNames.append("0");
    fields.append( new UAVObjectField(QString("East"), QString("m/s"), UAVObjectField::FLOAT32, EastElemNames, QStringList(), QString("")));
    QStringList DownElemNames;
    DownElemNames.append("0");
    fields.append( new UAVObjectField(QString("Down"), QString("m/s"), UAVObjectField::FLOAT32, DownElemNames, QStringList(), QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 5
0
/**
 * Constructor
 */
BaroSensor::BaroSensor(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList AltitudeElemNames;
    AltitudeElemNames.append("0");
    fields.append( new UAVObjectField(QString("Altitude"), QString("m"), UAVObjectField::FLOAT32, AltitudeElemNames, QStringList(), QString("")));
    QStringList TemperatureElemNames;
    TemperatureElemNames.append("0");
    fields.append( new UAVObjectField(QString("Temperature"), QString("C"), UAVObjectField::FLOAT32, TemperatureElemNames, QStringList(), QString("")));
    QStringList PressureElemNames;
    PressureElemNames.append("0");
    fields.append( new UAVObjectField(QString("Pressure"), QString("kPa"), UAVObjectField::FLOAT32, PressureElemNames, QStringList(), QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 6
0
/**
 * Constructor
 */
MixerStatus::MixerStatus(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField*> fields;
    QStringList Mixer0ElemNames;
    Mixer0ElemNames.append("0");
    fields.append( new UAVObjectField(QString("Mixer0"), QString(""), UAVObjectField::FLOAT32, Mixer0ElemNames, QStringList()) );
    QStringList Mixer1ElemNames;
    Mixer1ElemNames.append("0");
    fields.append( new UAVObjectField(QString("Mixer1"), QString(""), UAVObjectField::FLOAT32, Mixer1ElemNames, QStringList()) );
    QStringList Mixer2ElemNames;
    Mixer2ElemNames.append("0");
    fields.append( new UAVObjectField(QString("Mixer2"), QString(""), UAVObjectField::FLOAT32, Mixer2ElemNames, QStringList()) );
    QStringList Mixer3ElemNames;
    Mixer3ElemNames.append("0");
    fields.append( new UAVObjectField(QString("Mixer3"), QString(""), UAVObjectField::FLOAT32, Mixer3ElemNames, QStringList()) );
    QStringList Mixer4ElemNames;
    Mixer4ElemNames.append("0");
    fields.append( new UAVObjectField(QString("Mixer4"), QString(""), UAVObjectField::FLOAT32, Mixer4ElemNames, QStringList()) );
    QStringList Mixer5ElemNames;
    Mixer5ElemNames.append("0");
    fields.append( new UAVObjectField(QString("Mixer5"), QString(""), UAVObjectField::FLOAT32, Mixer5ElemNames, QStringList()) );
    QStringList Mixer6ElemNames;
    Mixer6ElemNames.append("0");
    fields.append( new UAVObjectField(QString("Mixer6"), QString(""), UAVObjectField::FLOAT32, Mixer6ElemNames, QStringList()) );
    QStringList Mixer7ElemNames;
    Mixer7ElemNames.append("0");
    fields.append( new UAVObjectField(QString("Mixer7"), QString(""), UAVObjectField::FLOAT32, Mixer7ElemNames, QStringList()) );

    // Initialize object
    initializeFields(fields, (quint8*)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
}
Ejemplo n.º 7
0
/**
 * Constructor
 */
SystemSettings::SystemSettings(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList GUIConfigDataElemNames;
    GUIConfigDataElemNames.append("0");
    GUIConfigDataElemNames.append("1");
    GUIConfigDataElemNames.append("2");
    GUIConfigDataElemNames.append("3");
    fields.append( new UAVObjectField(QString("GUIConfigData"), QString("bits"), UAVObjectField::UINT32, GUIConfigDataElemNames, QStringList(), QString("")));
    QStringList AirSpeedMaxElemNames;
    AirSpeedMaxElemNames.append("0");
    fields.append( new UAVObjectField(QString("AirSpeedMax"), QString("m/s"), UAVObjectField::FLOAT32, AirSpeedMaxElemNames, QStringList(), QString("")));
    QStringList AirSpeedMinElemNames;
    AirSpeedMinElemNames.append("0");
    fields.append( new UAVObjectField(QString("AirSpeedMin"), QString("m/s"), UAVObjectField::FLOAT32, AirSpeedMinElemNames, QStringList(), QString("")));
    QStringList AirframeTypeElemNames;
    AirframeTypeElemNames.append("0");
    QStringList AirframeTypeEnumOptions;
    AirframeTypeEnumOptions.append("FixedWing");
    AirframeTypeEnumOptions.append("FixedWingElevon");
    AirframeTypeEnumOptions.append("FixedWingVtail");
    AirframeTypeEnumOptions.append("VTOL");
    AirframeTypeEnumOptions.append("HeliCP");
    AirframeTypeEnumOptions.append("QuadX");
    AirframeTypeEnumOptions.append("QuadP");
    AirframeTypeEnumOptions.append("Hexa");
    AirframeTypeEnumOptions.append("Octo");
    AirframeTypeEnumOptions.append("Custom");
    AirframeTypeEnumOptions.append("HexaX");
    AirframeTypeEnumOptions.append("OctoV");
    AirframeTypeEnumOptions.append("OctoCoaxP");
    AirframeTypeEnumOptions.append("OctoCoaxX");
    AirframeTypeEnumOptions.append("HexaCoax");
    AirframeTypeEnumOptions.append("Tri");
    AirframeTypeEnumOptions.append("GroundVehicleCar");
    AirframeTypeEnumOptions.append("GroundVehicleDifferential");
    AirframeTypeEnumOptions.append("GroundVehicleMotorcycle");
    fields.append( new UAVObjectField(QString("AirframeType"), QString(""), UAVObjectField::ENUM, AirframeTypeElemNames, AirframeTypeEnumOptions, QString("")));
    QStringList ThrustControlElemNames;
    ThrustControlElemNames.append("0");
    QStringList ThrustControlEnumOptions;
    ThrustControlEnumOptions.append("Throttle");
    ThrustControlEnumOptions.append("Collective");
    ThrustControlEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("ThrustControl"), QString(""), UAVObjectField::ENUM, ThrustControlElemNames, ThrustControlEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
/**
 * Constructor
 */
GPSPositionSensor::GPSPositionSensor(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList LatitudeElemNames;
    LatitudeElemNames.append("0");
    fields.append( new UAVObjectField(QString("Latitude"), QString("degrees x 10^-7"), UAVObjectField::INT32, LatitudeElemNames, QStringList(), QString("")));
    QStringList LongitudeElemNames;
    LongitudeElemNames.append("0");
    fields.append( new UAVObjectField(QString("Longitude"), QString("degrees x 10^-7"), UAVObjectField::INT32, LongitudeElemNames, QStringList(), QString("")));
    QStringList AltitudeElemNames;
    AltitudeElemNames.append("0");
    fields.append( new UAVObjectField(QString("Altitude"), QString("meters"), UAVObjectField::FLOAT32, AltitudeElemNames, QStringList(), QString("")));
    QStringList GeoidSeparationElemNames;
    GeoidSeparationElemNames.append("0");
    fields.append( new UAVObjectField(QString("GeoidSeparation"), QString("meters"), UAVObjectField::FLOAT32, GeoidSeparationElemNames, QStringList(), QString("")));
    QStringList HeadingElemNames;
    HeadingElemNames.append("0");
    fields.append( new UAVObjectField(QString("Heading"), QString("degrees"), UAVObjectField::FLOAT32, HeadingElemNames, QStringList(), QString("")));
    QStringList GroundspeedElemNames;
    GroundspeedElemNames.append("0");
    fields.append( new UAVObjectField(QString("Groundspeed"), QString("m/s"), UAVObjectField::FLOAT32, GroundspeedElemNames, QStringList(), QString("")));
    QStringList PDOPElemNames;
    PDOPElemNames.append("0");
    fields.append( new UAVObjectField(QString("PDOP"), QString(""), UAVObjectField::FLOAT32, PDOPElemNames, QStringList(), QString("")));
    QStringList HDOPElemNames;
    HDOPElemNames.append("0");
    fields.append( new UAVObjectField(QString("HDOP"), QString(""), UAVObjectField::FLOAT32, HDOPElemNames, QStringList(), QString("")));
    QStringList VDOPElemNames;
    VDOPElemNames.append("0");
    fields.append( new UAVObjectField(QString("VDOP"), QString(""), UAVObjectField::FLOAT32, VDOPElemNames, QStringList(), QString("")));
    QStringList StatusElemNames;
    StatusElemNames.append("0");
    QStringList StatusEnumOptions;
    StatusEnumOptions.append("NoGPS");
    StatusEnumOptions.append("NoFix");
    StatusEnumOptions.append("Fix2D");
    StatusEnumOptions.append("Fix3D");
    fields.append( new UAVObjectField(QString("Status"), QString(""), UAVObjectField::ENUM, StatusElemNames, StatusEnumOptions, QString("")));
    QStringList SatellitesElemNames;
    SatellitesElemNames.append("0");
    fields.append( new UAVObjectField(QString("Satellites"), QString(""), UAVObjectField::INT8, SatellitesElemNames, QStringList(), QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 9
0
/**
 * Constructor
 */
GroundTruth::GroundTruth(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList AccelerationXYZElemNames;
    AccelerationXYZElemNames.append("0");
    AccelerationXYZElemNames.append("1");
    AccelerationXYZElemNames.append("2");
    fields.append( new UAVObjectField(QString("AccelerationXYZ"), QString("m/s^2"), UAVObjectField::FLOAT32, AccelerationXYZElemNames, QStringList(), QString("")));
    QStringList PositionNEDElemNames;
    PositionNEDElemNames.append("0");
    PositionNEDElemNames.append("1");
    PositionNEDElemNames.append("2");
    fields.append( new UAVObjectField(QString("PositionNED"), QString("m"), UAVObjectField::FLOAT32, PositionNEDElemNames, QStringList(), QString("")));
    QStringList VelocityNEDElemNames;
    VelocityNEDElemNames.append("0");
    VelocityNEDElemNames.append("1");
    VelocityNEDElemNames.append("2");
    fields.append( new UAVObjectField(QString("VelocityNED"), QString("m/s"), UAVObjectField::FLOAT32, VelocityNEDElemNames, QStringList(), QString("")));
    QStringList RPYElemNames;
    RPYElemNames.append("0");
    RPYElemNames.append("1");
    RPYElemNames.append("2");
    fields.append( new UAVObjectField(QString("RPY"), QString("deg"), UAVObjectField::FLOAT32, RPYElemNames, QStringList(), QString("")));
    QStringList AngularRatesElemNames;
    AngularRatesElemNames.append("0");
    AngularRatesElemNames.append("1");
    AngularRatesElemNames.append("2");
    fields.append( new UAVObjectField(QString("AngularRates"), QString("deg/s"), UAVObjectField::FLOAT32, AngularRatesElemNames, QStringList(), QString("")));
    QStringList TrueAirspeedElemNames;
    TrueAirspeedElemNames.append("0");
    fields.append( new UAVObjectField(QString("TrueAirspeed"), QString("m/s"), UAVObjectField::FLOAT32, TrueAirspeedElemNames, QStringList(), QString("")));
    QStringList CalibratedAirspeedElemNames;
    CalibratedAirspeedElemNames.append("0");
    fields.append( new UAVObjectField(QString("CalibratedAirspeed"), QString("m/s"), UAVObjectField::FLOAT32, CalibratedAirspeedElemNames, QStringList(), QString("")));
    QStringList AngleOfAttackElemNames;
    AngleOfAttackElemNames.append("0");
    fields.append( new UAVObjectField(QString("AngleOfAttack"), QString("deg"), UAVObjectField::FLOAT32, AngleOfAttackElemNames, QStringList(), QString("")));
    QStringList AngleOfSlipElemNames;
    AngleOfSlipElemNames.append("0");
    fields.append( new UAVObjectField(QString("AngleOfSlip"), QString("deg"), UAVObjectField::FLOAT32, AngleOfSlipElemNames, QStringList(), QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 10
0
/**
 * Constructor
 */
FlightStatus::FlightStatus(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList ArmedElemNames;
    ArmedElemNames.append("0");
    QStringList ArmedEnumOptions;
    ArmedEnumOptions.append("Disarmed");
    ArmedEnumOptions.append("Arming");
    ArmedEnumOptions.append("Armed");
    fields.append( new UAVObjectField(QString("Armed"), QString(""), UAVObjectField::ENUM, ArmedElemNames, ArmedEnumOptions, QString("")));
    QStringList FlightModeElemNames;
    FlightModeElemNames.append("0");
    QStringList FlightModeEnumOptions;
    FlightModeEnumOptions.append("Manual");
    FlightModeEnumOptions.append("Stabilized1");
    FlightModeEnumOptions.append("Stabilized2");
    FlightModeEnumOptions.append("Stabilized3");
    FlightModeEnumOptions.append("Stabilized4");
    FlightModeEnumOptions.append("Stabilized5");
    FlightModeEnumOptions.append("Stabilized6");
    FlightModeEnumOptions.append("Autotune");
    FlightModeEnumOptions.append("PositionHold");
    FlightModeEnumOptions.append("PositionVarioFPV");
    FlightModeEnumOptions.append("PositionVarioLOS");
    FlightModeEnumOptions.append("PositionVarioNSEW");
    FlightModeEnumOptions.append("ReturnToBase");
    FlightModeEnumOptions.append("Land");
    FlightModeEnumOptions.append("PathPlanner");
    FlightModeEnumOptions.append("POI");
    FlightModeEnumOptions.append("AutoCruise");
    fields.append( new UAVObjectField(QString("FlightMode"), QString(""), UAVObjectField::ENUM, FlightModeElemNames, FlightModeEnumOptions, QString("")));
    QStringList ControlChainElemNames;
    ControlChainElemNames.append("Stabilization");
    ControlChainElemNames.append("PathFollower");
    ControlChainElemNames.append("PathPlanner");
    QStringList ControlChainEnumOptions;
    ControlChainEnumOptions.append("false");
    ControlChainEnumOptions.append("true");
    fields.append( new UAVObjectField(QString("ControlChain"), QString("bool"), UAVObjectField::ENUM, ControlChainElemNames, ControlChainEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 11
0
/**
 * Constructor
 */
CallbackInfo::CallbackInfo(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList RunningTimeElemNames;
    RunningTimeElemNames.append("EventDispatcher");
    RunningTimeElemNames.append("StateEstimation");
    RunningTimeElemNames.append("AltitudeHold");
    RunningTimeElemNames.append("Stabilization0");
    RunningTimeElemNames.append("Stabilization1");
    RunningTimeElemNames.append("PathPlanner0");
    RunningTimeElemNames.append("PathPlanner1");
    RunningTimeElemNames.append("ManualControl");
    fields.append( new UAVObjectField(QString("RunningTime"), QString("#"), UAVObjectField::UINT32, RunningTimeElemNames, QStringList(), QString("")));
    QStringList StackRemainingElemNames;
    StackRemainingElemNames.append("EventDispatcher");
    StackRemainingElemNames.append("StateEstimation");
    StackRemainingElemNames.append("AltitudeHold");
    StackRemainingElemNames.append("Stabilization0");
    StackRemainingElemNames.append("Stabilization1");
    StackRemainingElemNames.append("PathPlanner0");
    StackRemainingElemNames.append("PathPlanner1");
    StackRemainingElemNames.append("ManualControl");
    fields.append( new UAVObjectField(QString("StackRemaining"), QString("bytes"), UAVObjectField::INT16, StackRemainingElemNames, QStringList(), QString("")));
    QStringList RunningElemNames;
    RunningElemNames.append("EventDispatcher");
    RunningElemNames.append("StateEstimation");
    RunningElemNames.append("AltitudeHold");
    RunningElemNames.append("Stabilization0");
    RunningElemNames.append("Stabilization1");
    RunningElemNames.append("PathPlanner0");
    RunningElemNames.append("PathPlanner1");
    RunningElemNames.append("ManualControl");
    QStringList RunningEnumOptions;
    RunningEnumOptions.append("False");
    RunningEnumOptions.append("True");
    fields.append( new UAVObjectField(QString("Running"), QString("bool"), UAVObjectField::ENUM, RunningElemNames, RunningEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 12
0
/**
 * Constructor
 */
GPSPosition::GPSPosition(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField*> fields;
    QStringList StatusElemNames;
    StatusElemNames.append("0");
    QStringList StatusEnumOptions;
    StatusEnumOptions.append("NoGPS");
    StatusEnumOptions.append("NoFix");
    StatusEnumOptions.append("Fix2D");
    StatusEnumOptions.append("Fix3D");
    fields.append( new UAVObjectField(QString("Status"), QString(""), UAVObjectField::ENUM, StatusElemNames, StatusEnumOptions) );
    QStringList LatitudeElemNames;
    LatitudeElemNames.append("0");
    fields.append( new UAVObjectField(QString("Latitude"), QString("degrees x 10^-7"), UAVObjectField::INT32, LatitudeElemNames, QStringList()) );
    QStringList LongitudeElemNames;
    LongitudeElemNames.append("0");
    fields.append( new UAVObjectField(QString("Longitude"), QString("degrees x 10^-7"), UAVObjectField::INT32, LongitudeElemNames, QStringList()) );
    QStringList AltitudeElemNames;
    AltitudeElemNames.append("0");
    fields.append( new UAVObjectField(QString("Altitude"), QString("meters"), UAVObjectField::FLOAT32, AltitudeElemNames, QStringList()) );
    QStringList GeoidSeparationElemNames;
    GeoidSeparationElemNames.append("0");
    fields.append( new UAVObjectField(QString("GeoidSeparation"), QString("meters"), UAVObjectField::FLOAT32, GeoidSeparationElemNames, QStringList()) );
    QStringList HeadingElemNames;
    HeadingElemNames.append("0");
    fields.append( new UAVObjectField(QString("Heading"), QString("degrees"), UAVObjectField::FLOAT32, HeadingElemNames, QStringList()) );
    QStringList GroundspeedElemNames;
    GroundspeedElemNames.append("0");
    fields.append( new UAVObjectField(QString("Groundspeed"), QString("m/s"), UAVObjectField::FLOAT32, GroundspeedElemNames, QStringList()) );
    QStringList SatellitesElemNames;
    SatellitesElemNames.append("0");
    fields.append( new UAVObjectField(QString("Satellites"), QString(""), UAVObjectField::INT8, SatellitesElemNames, QStringList()) );
    QStringList PDOPElemNames;
    PDOPElemNames.append("0");
    fields.append( new UAVObjectField(QString("PDOP"), QString(""), UAVObjectField::FLOAT32, PDOPElemNames, QStringList()) );
    QStringList HDOPElemNames;
    HDOPElemNames.append("0");
    fields.append( new UAVObjectField(QString("HDOP"), QString(""), UAVObjectField::FLOAT32, HDOPElemNames, QStringList()) );
    QStringList VDOPElemNames;
    VDOPElemNames.append("0");
    fields.append( new UAVObjectField(QString("VDOP"), QString(""), UAVObjectField::FLOAT32, VDOPElemNames, QStringList()) );

    // Initialize object
    initializeFields(fields, (quint8*)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
}
Ejemplo n.º 13
0
/**
 * Constructor
 */
Mpu6000Settings::Mpu6000Settings(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList GyroScaleElemNames;
    GyroScaleElemNames.append("0");
    QStringList GyroScaleEnumOptions;
    GyroScaleEnumOptions.append("Scale_250");
    GyroScaleEnumOptions.append("Scale_500");
    GyroScaleEnumOptions.append("Scale_1000");
    GyroScaleEnumOptions.append("Scale_2000");
    fields.append( new UAVObjectField(QString("GyroScale"), QString("deg/s"), UAVObjectField::ENUM, GyroScaleElemNames, GyroScaleEnumOptions, QString("")));
    QStringList AccelScaleElemNames;
    AccelScaleElemNames.append("0");
    QStringList AccelScaleEnumOptions;
    AccelScaleEnumOptions.append("Scale_2g");
    AccelScaleEnumOptions.append("Scale_4g");
    AccelScaleEnumOptions.append("Scale_8g");
    AccelScaleEnumOptions.append("Scale_16g");
    fields.append( new UAVObjectField(QString("AccelScale"), QString("g"), UAVObjectField::ENUM, AccelScaleElemNames, AccelScaleEnumOptions, QString("")));
    QStringList FilterSettingElemNames;
    FilterSettingElemNames.append("0");
    QStringList FilterSettingEnumOptions;
    FilterSettingEnumOptions.append("Lowpass_256_Hz");
    FilterSettingEnumOptions.append("Lowpass_188_Hz");
    FilterSettingEnumOptions.append("Lowpass_98_Hz");
    FilterSettingEnumOptions.append("Lowpass_42_Hz");
    FilterSettingEnumOptions.append("Lowpass_20_Hz");
    FilterSettingEnumOptions.append("Lowpass_10_Hz");
    FilterSettingEnumOptions.append("Lowpass_5_Hz");
    fields.append( new UAVObjectField(QString("FilterSetting"), QString("Hz"), UAVObjectField::ENUM, FilterSettingElemNames, FilterSettingEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 14
0
/**
 * Constructor
 */
VelocityDesired::VelocityDesired(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField*> fields;
    QStringList NorthElemNames;
    NorthElemNames.append("0");
    fields.append( new UAVObjectField(QString("North"), QString("cm/s"), UAVObjectField::INT32, NorthElemNames, QStringList()) );
    QStringList EastElemNames;
    EastElemNames.append("0");
    fields.append( new UAVObjectField(QString("East"), QString("cm/s"), UAVObjectField::INT32, EastElemNames, QStringList()) );
    QStringList DownElemNames;
    DownElemNames.append("0");
    fields.append( new UAVObjectField(QString("Down"), QString("cm/s"), UAVObjectField::INT32, DownElemNames, QStringList()) );

    // Initialize object
    initializeFields(fields, (quint8*)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
}
Ejemplo n.º 15
0
/**
 * Constructor
 */
RevoCalibration::RevoCalibration(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList mag_biasElemNames;
    mag_biasElemNames.append("X");
    mag_biasElemNames.append("Y");
    mag_biasElemNames.append("Z");
    fields.append( new UAVObjectField(QString("mag_bias"), QString("mGau"), UAVObjectField::FLOAT32, mag_biasElemNames, QStringList(), QString("")));
    QStringList mag_transformElemNames;
    mag_transformElemNames.append("r0c0");
    mag_transformElemNames.append("r0c1");
    mag_transformElemNames.append("r0c2");
    mag_transformElemNames.append("r1c0");
    mag_transformElemNames.append("r1c1");
    mag_transformElemNames.append("r1c2");
    mag_transformElemNames.append("r2c0");
    mag_transformElemNames.append("r2c1");
    mag_transformElemNames.append("r2c2");
    fields.append( new UAVObjectField(QString("mag_transform"), QString("gain"), UAVObjectField::FLOAT32, mag_transformElemNames, QStringList(), QString("")));
    QStringList MagBiasNullingRateElemNames;
    MagBiasNullingRateElemNames.append("0");
    fields.append( new UAVObjectField(QString("MagBiasNullingRate"), QString(""), UAVObjectField::FLOAT32, MagBiasNullingRateElemNames, QStringList(), QString("")));
    QStringList BiasCorrectedRawElemNames;
    BiasCorrectedRawElemNames.append("0");
    QStringList BiasCorrectedRawEnumOptions;
    BiasCorrectedRawEnumOptions.append("FALSE");
    BiasCorrectedRawEnumOptions.append("TRUE");
    fields.append( new UAVObjectField(QString("BiasCorrectedRaw"), QString(""), UAVObjectField::ENUM, BiasCorrectedRawElemNames, BiasCorrectedRawEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 16
0
/**
 * Constructor
 */
OveroSyncStats::OveroSyncStats(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList SendElemNames;
    SendElemNames.append("0");
    fields.append( new UAVObjectField(QString("Send"), QString("B/s"), UAVObjectField::UINT32, SendElemNames, QStringList(), QString("")));
    QStringList ReceivedElemNames;
    ReceivedElemNames.append("0");
    fields.append( new UAVObjectField(QString("Received"), QString("B/s"), UAVObjectField::UINT32, ReceivedElemNames, QStringList(), QString("")));
    QStringList FramesyncErrorsElemNames;
    FramesyncErrorsElemNames.append("0");
    fields.append( new UAVObjectField(QString("FramesyncErrors"), QString("count"), UAVObjectField::UINT32, FramesyncErrorsElemNames, QStringList(), QString("")));
    QStringList UnderrunErrorsElemNames;
    UnderrunErrorsElemNames.append("0");
    fields.append( new UAVObjectField(QString("UnderrunErrors"), QString("count"), UAVObjectField::UINT32, UnderrunErrorsElemNames, QStringList(), QString("")));
    QStringList DroppedUpdatesElemNames;
    DroppedUpdatesElemNames.append("0");
    fields.append( new UAVObjectField(QString("DroppedUpdates"), QString(""), UAVObjectField::UINT32, DroppedUpdatesElemNames, QStringList(), QString("")));
    QStringList PacketsElemNames;
    PacketsElemNames.append("0");
    fields.append( new UAVObjectField(QString("Packets"), QString(""), UAVObjectField::UINT32, PacketsElemNames, QStringList(), QString("")));
    QStringList ConnectedElemNames;
    ConnectedElemNames.append("0");
    QStringList ConnectedEnumOptions;
    ConnectedEnumOptions.append("False");
    ConnectedEnumOptions.append("True");
    fields.append( new UAVObjectField(QString("Connected"), QString(""), UAVObjectField::ENUM, ConnectedElemNames, ConnectedEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
/**
 * Constructor
 */
AltitudeHoldSettings::AltitudeHoldSettings(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList AltitudePIElemNames;
    AltitudePIElemNames.append("Kp");
    AltitudePIElemNames.append("Ki");
    AltitudePIElemNames.append("Ilimit");
    fields.append( new UAVObjectField(QString("AltitudePI"), QString("(m/s)/m"), UAVObjectField::FLOAT32, AltitudePIElemNames, QStringList(), QString("")));
    QStringList VelocityPIElemNames;
    VelocityPIElemNames.append("Kp");
    VelocityPIElemNames.append("Ki");
    VelocityPIElemNames.append("Ilimit");
    fields.append( new UAVObjectField(QString("VelocityPI"), QString("(m/s^2)/(m/s)"), UAVObjectField::FLOAT32, VelocityPIElemNames, QStringList(), QString("")));
    QStringList ThrustRateElemNames;
    ThrustRateElemNames.append("0");
    fields.append( new UAVObjectField(QString("ThrustRate"), QString("m/s"), UAVObjectField::FLOAT32, ThrustRateElemNames, QStringList(), QString("")));
    QStringList CutThrustWhenZeroElemNames;
    CutThrustWhenZeroElemNames.append("0");
    QStringList CutThrustWhenZeroEnumOptions;
    CutThrustWhenZeroEnumOptions.append("False");
    CutThrustWhenZeroEnumOptions.append("True");
    fields.append( new UAVObjectField(QString("CutThrustWhenZero"), QString("bool"), UAVObjectField::ENUM, CutThrustWhenZeroElemNames, CutThrustWhenZeroEnumOptions, QString("")));
    QStringList ThrustExpElemNames;
    ThrustExpElemNames.append("0");
    fields.append( new UAVObjectField(QString("ThrustExp"), QString(""), UAVObjectField::UINT8, ThrustExpElemNames, QStringList(), QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
/**
 * Constructor
 */
DebugLogSettings::DebugLogSettings(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList LoggingEnabledElemNames;
    LoggingEnabledElemNames.append("0");
    QStringList LoggingEnabledEnumOptions;
    LoggingEnabledEnumOptions.append("Disabled");
    LoggingEnabledEnumOptions.append("OnlyWhenArmed");
    LoggingEnabledEnumOptions.append("Always");
    fields.append( new UAVObjectField(QString("LoggingEnabled"), QString(""), UAVObjectField::ENUM, LoggingEnabledElemNames, LoggingEnabledEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 19
0
/**
 * Constructor
 */
MixerSettings::MixerSettings(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField*> fields;
    QStringList MaxAccelElemNames;
    MaxAccelElemNames.append("0");
    fields.append( new UAVObjectField(QString("MaxAccel"), QString("units/sec"), UAVObjectField::FLOAT32, MaxAccelElemNames, QStringList()) );
    QStringList FeedForwardElemNames;
    FeedForwardElemNames.append("0");
    fields.append( new UAVObjectField(QString("FeedForward"), QString(""), UAVObjectField::FLOAT32, FeedForwardElemNames, QStringList()) );
    QStringList AccelTimeElemNames;
    AccelTimeElemNames.append("0");
    fields.append( new UAVObjectField(QString("AccelTime"), QString("ms"), UAVObjectField::FLOAT32, AccelTimeElemNames, QStringList()) );
    QStringList DecelTimeElemNames;
    DecelTimeElemNames.append("0");
    fields.append( new UAVObjectField(QString("DecelTime"), QString("ms"), UAVObjectField::FLOAT32, DecelTimeElemNames, QStringList()) );
    QStringList ThrottleCurve1ElemNames;
    ThrottleCurve1ElemNames.append("0");
    ThrottleCurve1ElemNames.append("25");
    ThrottleCurve1ElemNames.append("50");
    ThrottleCurve1ElemNames.append("75");
    ThrottleCurve1ElemNames.append("100");
    fields.append( new UAVObjectField(QString("ThrottleCurve1"), QString("percent"), UAVObjectField::FLOAT32, ThrottleCurve1ElemNames, QStringList()) );
    QStringList ThrottleCurve2ElemNames;
    ThrottleCurve2ElemNames.append("0");
    ThrottleCurve2ElemNames.append("25");
    ThrottleCurve2ElemNames.append("50");
    ThrottleCurve2ElemNames.append("75");
    ThrottleCurve2ElemNames.append("100");
    fields.append( new UAVObjectField(QString("ThrottleCurve2"), QString("percent"), UAVObjectField::FLOAT32, ThrottleCurve2ElemNames, QStringList()) );
    QStringList Mixer0TypeElemNames;
    Mixer0TypeElemNames.append("0");
    QStringList Mixer0TypeEnumOptions;
    Mixer0TypeEnumOptions.append("Disabled");
    Mixer0TypeEnumOptions.append("Motor");
    Mixer0TypeEnumOptions.append("Servo");
    fields.append( new UAVObjectField(QString("Mixer0Type"), QString(""), UAVObjectField::ENUM, Mixer0TypeElemNames, Mixer0TypeEnumOptions) );
    QStringList Mixer0VectorElemNames;
    Mixer0VectorElemNames.append("ThrottleCurve1");
    Mixer0VectorElemNames.append("ThrottleCurve2");
    Mixer0VectorElemNames.append("Roll");
    Mixer0VectorElemNames.append("Pitch");
    Mixer0VectorElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("Mixer0Vector"), QString(""), UAVObjectField::INT8, Mixer0VectorElemNames, QStringList()) );
    QStringList Mixer1TypeElemNames;
    Mixer1TypeElemNames.append("0");
    QStringList Mixer1TypeEnumOptions;
    Mixer1TypeEnumOptions.append("Disabled");
    Mixer1TypeEnumOptions.append("Motor");
    Mixer1TypeEnumOptions.append("Servo");
    fields.append( new UAVObjectField(QString("Mixer1Type"), QString(""), UAVObjectField::ENUM, Mixer1TypeElemNames, Mixer1TypeEnumOptions) );
    QStringList Mixer1VectorElemNames;
    Mixer1VectorElemNames.append("ThrottleCurve1");
    Mixer1VectorElemNames.append("ThrottleCurve2");
    Mixer1VectorElemNames.append("Roll");
    Mixer1VectorElemNames.append("Pitch");
    Mixer1VectorElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("Mixer1Vector"), QString(""), UAVObjectField::INT8, Mixer1VectorElemNames, QStringList()) );
    QStringList Mixer2TypeElemNames;
    Mixer2TypeElemNames.append("0");
    QStringList Mixer2TypeEnumOptions;
    Mixer2TypeEnumOptions.append("Disabled");
    Mixer2TypeEnumOptions.append("Motor");
    Mixer2TypeEnumOptions.append("Servo");
    fields.append( new UAVObjectField(QString("Mixer2Type"), QString(""), UAVObjectField::ENUM, Mixer2TypeElemNames, Mixer2TypeEnumOptions) );
    QStringList Mixer2VectorElemNames;
    Mixer2VectorElemNames.append("ThrottleCurve1");
    Mixer2VectorElemNames.append("ThrottleCurve2");
    Mixer2VectorElemNames.append("Roll");
    Mixer2VectorElemNames.append("Pitch");
    Mixer2VectorElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("Mixer2Vector"), QString(""), UAVObjectField::INT8, Mixer2VectorElemNames, QStringList()) );
    QStringList Mixer3TypeElemNames;
    Mixer3TypeElemNames.append("0");
    QStringList Mixer3TypeEnumOptions;
    Mixer3TypeEnumOptions.append("Disabled");
    Mixer3TypeEnumOptions.append("Motor");
    Mixer3TypeEnumOptions.append("Servo");
    fields.append( new UAVObjectField(QString("Mixer3Type"), QString(""), UAVObjectField::ENUM, Mixer3TypeElemNames, Mixer3TypeEnumOptions) );
    QStringList Mixer3VectorElemNames;
    Mixer3VectorElemNames.append("ThrottleCurve1");
    Mixer3VectorElemNames.append("ThrottleCurve2");
    Mixer3VectorElemNames.append("Roll");
    Mixer3VectorElemNames.append("Pitch");
    Mixer3VectorElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("Mixer3Vector"), QString(""), UAVObjectField::INT8, Mixer3VectorElemNames, QStringList()) );
    QStringList Mixer4TypeElemNames;
    Mixer4TypeElemNames.append("0");
    QStringList Mixer4TypeEnumOptions;
    Mixer4TypeEnumOptions.append("Disabled");
    Mixer4TypeEnumOptions.append("Motor");
    Mixer4TypeEnumOptions.append("Servo");
    fields.append( new UAVObjectField(QString("Mixer4Type"), QString(""), UAVObjectField::ENUM, Mixer4TypeElemNames, Mixer4TypeEnumOptions) );
    QStringList Mixer4VectorElemNames;
    Mixer4VectorElemNames.append("ThrottleCurve1");
    Mixer4VectorElemNames.append("ThrottleCurve2");
    Mixer4VectorElemNames.append("Roll");
    Mixer4VectorElemNames.append("Pitch");
    Mixer4VectorElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("Mixer4Vector"), QString(""), UAVObjectField::INT8, Mixer4VectorElemNames, QStringList()) );
    QStringList Mixer5TypeElemNames;
    Mixer5TypeElemNames.append("0");
    QStringList Mixer5TypeEnumOptions;
    Mixer5TypeEnumOptions.append("Disabled");
    Mixer5TypeEnumOptions.append("Motor");
    Mixer5TypeEnumOptions.append("Servo");
    fields.append( new UAVObjectField(QString("Mixer5Type"), QString(""), UAVObjectField::ENUM, Mixer5TypeElemNames, Mixer5TypeEnumOptions) );
    QStringList Mixer5VectorElemNames;
    Mixer5VectorElemNames.append("ThrottleCurve1");
    Mixer5VectorElemNames.append("ThrottleCurve2");
    Mixer5VectorElemNames.append("Roll");
    Mixer5VectorElemNames.append("Pitch");
    Mixer5VectorElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("Mixer5Vector"), QString(""), UAVObjectField::INT8, Mixer5VectorElemNames, QStringList()) );
    QStringList Mixer6TypeElemNames;
    Mixer6TypeElemNames.append("0");
    QStringList Mixer6TypeEnumOptions;
    Mixer6TypeEnumOptions.append("Disabled");
    Mixer6TypeEnumOptions.append("Motor");
    Mixer6TypeEnumOptions.append("Servo");
    fields.append( new UAVObjectField(QString("Mixer6Type"), QString(""), UAVObjectField::ENUM, Mixer6TypeElemNames, Mixer6TypeEnumOptions) );
    QStringList Mixer6VectorElemNames;
    Mixer6VectorElemNames.append("ThrottleCurve1");
    Mixer6VectorElemNames.append("ThrottleCurve2");
    Mixer6VectorElemNames.append("Roll");
    Mixer6VectorElemNames.append("Pitch");
    Mixer6VectorElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("Mixer6Vector"), QString(""), UAVObjectField::INT8, Mixer6VectorElemNames, QStringList()) );
    QStringList Mixer7TypeElemNames;
    Mixer7TypeElemNames.append("0");
    QStringList Mixer7TypeEnumOptions;
    Mixer7TypeEnumOptions.append("Disabled");
    Mixer7TypeEnumOptions.append("Motor");
    Mixer7TypeEnumOptions.append("Servo");
    fields.append( new UAVObjectField(QString("Mixer7Type"), QString(""), UAVObjectField::ENUM, Mixer7TypeElemNames, Mixer7TypeEnumOptions) );
    QStringList Mixer7VectorElemNames;
    Mixer7VectorElemNames.append("ThrottleCurve1");
    Mixer7VectorElemNames.append("ThrottleCurve2");
    Mixer7VectorElemNames.append("Roll");
    Mixer7VectorElemNames.append("Pitch");
    Mixer7VectorElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("Mixer7Vector"), QString(""), UAVObjectField::INT8, Mixer7VectorElemNames, QStringList()) );

    // Initialize object
    initializeFields(fields, (quint8*)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
}
Ejemplo n.º 20
0
/**
 * Constructor
 */
I2CStats::I2CStats(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList evirq_logElemNames;
    evirq_logElemNames.append("0");
    evirq_logElemNames.append("1");
    evirq_logElemNames.append("2");
    evirq_logElemNames.append("3");
    evirq_logElemNames.append("4");
    fields.append( new UAVObjectField(QString("evirq_log"), QString(""), UAVObjectField::UINT32, evirq_logElemNames, QStringList(), QString("")));
    QStringList erirq_logElemNames;
    erirq_logElemNames.append("0");
    erirq_logElemNames.append("1");
    erirq_logElemNames.append("2");
    erirq_logElemNames.append("3");
    erirq_logElemNames.append("4");
    fields.append( new UAVObjectField(QString("erirq_log"), QString(""), UAVObjectField::UINT32, erirq_logElemNames, QStringList(), QString("")));
    QStringList event_errorsElemNames;
    event_errorsElemNames.append("0");
    fields.append( new UAVObjectField(QString("event_errors"), QString(""), UAVObjectField::UINT8, event_errorsElemNames, QStringList(), QString("")));
    QStringList fsm_errorsElemNames;
    fsm_errorsElemNames.append("0");
    fields.append( new UAVObjectField(QString("fsm_errors"), QString(""), UAVObjectField::UINT8, fsm_errorsElemNames, QStringList(), QString("")));
    QStringList irq_errorsElemNames;
    irq_errorsElemNames.append("0");
    fields.append( new UAVObjectField(QString("irq_errors"), QString(""), UAVObjectField::UINT8, irq_errorsElemNames, QStringList(), QString("")));
    QStringList nacksElemNames;
    nacksElemNames.append("0");
    fields.append( new UAVObjectField(QString("nacks"), QString(""), UAVObjectField::UINT8, nacksElemNames, QStringList(), QString("")));
    QStringList timeoutsElemNames;
    timeoutsElemNames.append("0");
    fields.append( new UAVObjectField(QString("timeouts"), QString(""), UAVObjectField::UINT8, timeoutsElemNames, QStringList(), QString("")));
    QStringList last_error_typeElemNames;
    last_error_typeElemNames.append("0");
    QStringList last_error_typeEnumOptions;
    last_error_typeEnumOptions.append("EVENT");
    last_error_typeEnumOptions.append("FSM");
    last_error_typeEnumOptions.append("INTERRUPT");
    fields.append( new UAVObjectField(QString("last_error_type"), QString(""), UAVObjectField::ENUM, last_error_typeElemNames, last_error_typeEnumOptions, QString("")));
    QStringList event_logElemNames;
    event_logElemNames.append("0");
    event_logElemNames.append("1");
    event_logElemNames.append("2");
    event_logElemNames.append("3");
    event_logElemNames.append("4");
    QStringList event_logEnumOptions;
    event_logEnumOptions.append("I2C_EVENT_BUS_ERROR");
    event_logEnumOptions.append("I2C_EVENT_START");
    event_logEnumOptions.append("I2C_EVENT_STARTED_MORE_TXN_READ");
    event_logEnumOptions.append("I2C_EVENT_STARTED_MORE_TXN_WRITE");
    event_logEnumOptions.append("I2C_EVENT_STARTED_LAST_TXN_READ");
    event_logEnumOptions.append("I2C_EVENT_STARTED_LAST_TXN_WRITE");
    event_logEnumOptions.append("I2C_EVENT_ADDR_SENT_LEN_EQ_0");
    event_logEnumOptions.append("I2C_EVENT_ADDR_SENT_LEN_EQ_1");
    event_logEnumOptions.append("I2C_EVENT_ADDR_SENT_LEN_EQ_2");
    event_logEnumOptions.append("I2C_EVENT_ADDR_SENT_LEN_GT_2");
    event_logEnumOptions.append("I2C_EVENT_TRANSFER_DONE_LEN_EQ_0");
    event_logEnumOptions.append("I2C_EVENT_TRANSFER_DONE_LEN_EQ_1");
    event_logEnumOptions.append("I2C_EVENT_TRANSFER_DONE_LEN_EQ_2");
    event_logEnumOptions.append("I2C_EVENT_TRANSFER_DONE_LEN_GT_2");
    event_logEnumOptions.append("I2C_EVENT_NACK");
    event_logEnumOptions.append("I2C_EVENT_STOPPED");
    event_logEnumOptions.append("I2C_EVENT_AUTO");
    fields.append( new UAVObjectField(QString("event_log"), QString(""), UAVObjectField::ENUM, event_logElemNames, event_logEnumOptions, QString("")));
    QStringList state_logElemNames;
    state_logElemNames.append("0");
    state_logElemNames.append("1");
    state_logElemNames.append("2");
    state_logElemNames.append("3");
    state_logElemNames.append("4");
    QStringList state_logEnumOptions;
    state_logEnumOptions.append("I2C_STATE_FSM_FAULT");
    state_logEnumOptions.append("I2C_STATE_BUS_ERROR");
    state_logEnumOptions.append("I2C_STATE_STOPPED");
    state_logEnumOptions.append("I2C_STATE_STOPPING");
    state_logEnumOptions.append("I2C_STATE_STARTING");
    state_logEnumOptions.append("I2C_STATE_R_MORE_TXN_ADDR");
    state_logEnumOptions.append("I2C_STATE_R_MORE_TXN_PRE_ONE");
    state_logEnumOptions.append("I2C_STATE_R_MORE_TXN_PRE_FIRST");
    state_logEnumOptions.append("I2C_STATE_R_MORE_TXN_PRE_MIDDLE");
    state_logEnumOptions.append("I2C_STATE_R_MORE_TXN_LAST");
    state_logEnumOptions.append("I2C_STATE_R_MORE_TXN_POST_LAST");
    state_logEnumOptions.append("R_LAST_TXN_ADDR");
    state_logEnumOptions.append("I2C_STATE_R_LAST_TXN_PRE_ONE");
    state_logEnumOptions.append("I2C_STATE_R_LAST_TXN_PRE_FIRST");
    state_logEnumOptions.append("I2C_STATE_R_LAST_TXN_PRE_MIDDLE");
    state_logEnumOptions.append("I2C_STATE_R_LAST_TXN_PRE_LAST");
    state_logEnumOptions.append("I2C_STATE_R_LAST_TXN_POST_LAST");
    state_logEnumOptions.append("I2C_STATE_W_MORE_TXN_ADDR");
    state_logEnumOptions.append("I2C_STATE_W_MORE_TXN_MIDDLE");
    state_logEnumOptions.append("I2C_STATE_W_MORE_TXN_LAST");
    state_logEnumOptions.append("I2C_STATE_W_LAST_TXN_ADDR");
    state_logEnumOptions.append("I2C_STATE_W_LAST_TXN_MIDDLE");
    state_logEnumOptions.append("I2C_STATE_W_LAST_TXN_LAST");
    state_logEnumOptions.append("I2C_STATE_NACK");
    fields.append( new UAVObjectField(QString("state_log"), QString(""), UAVObjectField::ENUM, state_logElemNames, state_logEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
Ejemplo n.º 21
0
/**
 * Constructor
 */
ActuatorSettings::ActuatorSettings(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField*> fields;
    QStringList FixedWingRoll1ElemNames;
    FixedWingRoll1ElemNames.append("0");
    QStringList FixedWingRoll1EnumOptions;
    FixedWingRoll1EnumOptions.append("Channel0");
    FixedWingRoll1EnumOptions.append("Channel1");
    FixedWingRoll1EnumOptions.append("Channel2");
    FixedWingRoll1EnumOptions.append("Channel3");
    FixedWingRoll1EnumOptions.append("Channel4");
    FixedWingRoll1EnumOptions.append("Channel5");
    FixedWingRoll1EnumOptions.append("Channel6");
    FixedWingRoll1EnumOptions.append("Channel7");
    FixedWingRoll1EnumOptions.append("None");
    fields.append( new UAVObjectField(QString("FixedWingRoll1"), QString("channel"), UAVObjectField::ENUM, FixedWingRoll1ElemNames, FixedWingRoll1EnumOptions) );
    QStringList FixedWingRoll2ElemNames;
    FixedWingRoll2ElemNames.append("0");
    QStringList FixedWingRoll2EnumOptions;
    FixedWingRoll2EnumOptions.append("Channel0");
    FixedWingRoll2EnumOptions.append("Channel1");
    FixedWingRoll2EnumOptions.append("Channel2");
    FixedWingRoll2EnumOptions.append("Channel3");
    FixedWingRoll2EnumOptions.append("Channel4");
    FixedWingRoll2EnumOptions.append("Channel5");
    FixedWingRoll2EnumOptions.append("Channel6");
    FixedWingRoll2EnumOptions.append("Channel7");
    FixedWingRoll2EnumOptions.append("None");
    fields.append( new UAVObjectField(QString("FixedWingRoll2"), QString("channel"), UAVObjectField::ENUM, FixedWingRoll2ElemNames, FixedWingRoll2EnumOptions) );
    QStringList FixedWingPitch1ElemNames;
    FixedWingPitch1ElemNames.append("0");
    QStringList FixedWingPitch1EnumOptions;
    FixedWingPitch1EnumOptions.append("Channel0");
    FixedWingPitch1EnumOptions.append("Channel1");
    FixedWingPitch1EnumOptions.append("Channel2");
    FixedWingPitch1EnumOptions.append("Channel3");
    FixedWingPitch1EnumOptions.append("Channel4");
    FixedWingPitch1EnumOptions.append("Channel5");
    FixedWingPitch1EnumOptions.append("Channel6");
    FixedWingPitch1EnumOptions.append("Channel7");
    FixedWingPitch1EnumOptions.append("None");
    fields.append( new UAVObjectField(QString("FixedWingPitch1"), QString("channel"), UAVObjectField::ENUM, FixedWingPitch1ElemNames, FixedWingPitch1EnumOptions) );
    QStringList FixedWingPitch2ElemNames;
    FixedWingPitch2ElemNames.append("0");
    QStringList FixedWingPitch2EnumOptions;
    FixedWingPitch2EnumOptions.append("Channel0");
    FixedWingPitch2EnumOptions.append("Channel1");
    FixedWingPitch2EnumOptions.append("Channel2");
    FixedWingPitch2EnumOptions.append("Channel3");
    FixedWingPitch2EnumOptions.append("Channel4");
    FixedWingPitch2EnumOptions.append("Channel5");
    FixedWingPitch2EnumOptions.append("Channel6");
    FixedWingPitch2EnumOptions.append("Channel7");
    FixedWingPitch2EnumOptions.append("None");
    fields.append( new UAVObjectField(QString("FixedWingPitch2"), QString("channel"), UAVObjectField::ENUM, FixedWingPitch2ElemNames, FixedWingPitch2EnumOptions) );
    QStringList FixedWingYawElemNames;
    FixedWingYawElemNames.append("0");
    QStringList FixedWingYawEnumOptions;
    FixedWingYawEnumOptions.append("Channel0");
    FixedWingYawEnumOptions.append("Channel1");
    FixedWingYawEnumOptions.append("Channel2");
    FixedWingYawEnumOptions.append("Channel3");
    FixedWingYawEnumOptions.append("Channel4");
    FixedWingYawEnumOptions.append("Channel5");
    FixedWingYawEnumOptions.append("Channel6");
    FixedWingYawEnumOptions.append("Channel7");
    FixedWingYawEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("FixedWingYaw"), QString("channel"), UAVObjectField::ENUM, FixedWingYawElemNames, FixedWingYawEnumOptions) );
    QStringList FixedWingThrottleElemNames;
    FixedWingThrottleElemNames.append("0");
    QStringList FixedWingThrottleEnumOptions;
    FixedWingThrottleEnumOptions.append("Channel0");
    FixedWingThrottleEnumOptions.append("Channel1");
    FixedWingThrottleEnumOptions.append("Channel2");
    FixedWingThrottleEnumOptions.append("Channel3");
    FixedWingThrottleEnumOptions.append("Channel4");
    FixedWingThrottleEnumOptions.append("Channel5");
    FixedWingThrottleEnumOptions.append("Channel6");
    FixedWingThrottleEnumOptions.append("Channel7");
    FixedWingThrottleEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("FixedWingThrottle"), QString("channel"), UAVObjectField::ENUM, FixedWingThrottleElemNames, FixedWingThrottleEnumOptions) );
    QStringList VTOLMotorNElemNames;
    VTOLMotorNElemNames.append("0");
    QStringList VTOLMotorNEnumOptions;
    VTOLMotorNEnumOptions.append("Channel0");
    VTOLMotorNEnumOptions.append("Channel1");
    VTOLMotorNEnumOptions.append("Channel2");
    VTOLMotorNEnumOptions.append("Channel3");
    VTOLMotorNEnumOptions.append("Channel4");
    VTOLMotorNEnumOptions.append("Channel5");
    VTOLMotorNEnumOptions.append("Channel6");
    VTOLMotorNEnumOptions.append("Channel7");
    VTOLMotorNEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("VTOLMotorN"), QString("channel"), UAVObjectField::ENUM, VTOLMotorNElemNames, VTOLMotorNEnumOptions) );
    QStringList VTOLMotorNEElemNames;
    VTOLMotorNEElemNames.append("0");
    QStringList VTOLMotorNEEnumOptions;
    VTOLMotorNEEnumOptions.append("Channel0");
    VTOLMotorNEEnumOptions.append("Channel1");
    VTOLMotorNEEnumOptions.append("Channel2");
    VTOLMotorNEEnumOptions.append("Channel3");
    VTOLMotorNEEnumOptions.append("Channel4");
    VTOLMotorNEEnumOptions.append("Channel5");
    VTOLMotorNEEnumOptions.append("Channel6");
    VTOLMotorNEEnumOptions.append("Channel7");
    VTOLMotorNEEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("VTOLMotorNE"), QString("channel"), UAVObjectField::ENUM, VTOLMotorNEElemNames, VTOLMotorNEEnumOptions) );
    QStringList VTOLMotorEElemNames;
    VTOLMotorEElemNames.append("0");
    QStringList VTOLMotorEEnumOptions;
    VTOLMotorEEnumOptions.append("Channel0");
    VTOLMotorEEnumOptions.append("Channel1");
    VTOLMotorEEnumOptions.append("Channel2");
    VTOLMotorEEnumOptions.append("Channel3");
    VTOLMotorEEnumOptions.append("Channel4");
    VTOLMotorEEnumOptions.append("Channel5");
    VTOLMotorEEnumOptions.append("Channel6");
    VTOLMotorEEnumOptions.append("Channel7");
    VTOLMotorEEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("VTOLMotorE"), QString("channel"), UAVObjectField::ENUM, VTOLMotorEElemNames, VTOLMotorEEnumOptions) );
    QStringList VTOLMotorSEElemNames;
    VTOLMotorSEElemNames.append("0");
    QStringList VTOLMotorSEEnumOptions;
    VTOLMotorSEEnumOptions.append("Channel0");
    VTOLMotorSEEnumOptions.append("Channel1");
    VTOLMotorSEEnumOptions.append("Channel2");
    VTOLMotorSEEnumOptions.append("Channel3");
    VTOLMotorSEEnumOptions.append("Channel4");
    VTOLMotorSEEnumOptions.append("Channel5");
    VTOLMotorSEEnumOptions.append("Channel6");
    VTOLMotorSEEnumOptions.append("Channel7");
    VTOLMotorSEEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("VTOLMotorSE"), QString("channel"), UAVObjectField::ENUM, VTOLMotorSEElemNames, VTOLMotorSEEnumOptions) );
    QStringList VTOLMotorSElemNames;
    VTOLMotorSElemNames.append("0");
    QStringList VTOLMotorSEnumOptions;
    VTOLMotorSEnumOptions.append("Channel0");
    VTOLMotorSEnumOptions.append("Channel1");
    VTOLMotorSEnumOptions.append("Channel2");
    VTOLMotorSEnumOptions.append("Channel3");
    VTOLMotorSEnumOptions.append("Channel4");
    VTOLMotorSEnumOptions.append("Channel5");
    VTOLMotorSEnumOptions.append("Channel6");
    VTOLMotorSEnumOptions.append("Channel7");
    VTOLMotorSEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("VTOLMotorS"), QString("channel"), UAVObjectField::ENUM, VTOLMotorSElemNames, VTOLMotorSEnumOptions) );
    QStringList VTOLMotorSWElemNames;
    VTOLMotorSWElemNames.append("0");
    QStringList VTOLMotorSWEnumOptions;
    VTOLMotorSWEnumOptions.append("Channel0");
    VTOLMotorSWEnumOptions.append("Channel1");
    VTOLMotorSWEnumOptions.append("Channel2");
    VTOLMotorSWEnumOptions.append("Channel3");
    VTOLMotorSWEnumOptions.append("Channel4");
    VTOLMotorSWEnumOptions.append("Channel5");
    VTOLMotorSWEnumOptions.append("Channel6");
    VTOLMotorSWEnumOptions.append("Channel7");
    VTOLMotorSWEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("VTOLMotorSW"), QString("channel"), UAVObjectField::ENUM, VTOLMotorSWElemNames, VTOLMotorSWEnumOptions) );
    QStringList VTOLMotorWElemNames;
    VTOLMotorWElemNames.append("0");
    QStringList VTOLMotorWEnumOptions;
    VTOLMotorWEnumOptions.append("Channel0");
    VTOLMotorWEnumOptions.append("Channel1");
    VTOLMotorWEnumOptions.append("Channel2");
    VTOLMotorWEnumOptions.append("Channel3");
    VTOLMotorWEnumOptions.append("Channel4");
    VTOLMotorWEnumOptions.append("Channel5");
    VTOLMotorWEnumOptions.append("Channel6");
    VTOLMotorWEnumOptions.append("Channel7");
    VTOLMotorWEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("VTOLMotorW"), QString("channel"), UAVObjectField::ENUM, VTOLMotorWElemNames, VTOLMotorWEnumOptions) );
    QStringList VTOLMotorNWElemNames;
    VTOLMotorNWElemNames.append("0");
    QStringList VTOLMotorNWEnumOptions;
    VTOLMotorNWEnumOptions.append("Channel0");
    VTOLMotorNWEnumOptions.append("Channel1");
    VTOLMotorNWEnumOptions.append("Channel2");
    VTOLMotorNWEnumOptions.append("Channel3");
    VTOLMotorNWEnumOptions.append("Channel4");
    VTOLMotorNWEnumOptions.append("Channel5");
    VTOLMotorNWEnumOptions.append("Channel6");
    VTOLMotorNWEnumOptions.append("Channel7");
    VTOLMotorNWEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("VTOLMotorNW"), QString("channel"), UAVObjectField::ENUM, VTOLMotorNWElemNames, VTOLMotorNWEnumOptions) );
    QStringList CCPMYawStabilizationInManualModeElemNames;
    CCPMYawStabilizationInManualModeElemNames.append("0");
    QStringList CCPMYawStabilizationInManualModeEnumOptions;
    CCPMYawStabilizationInManualModeEnumOptions.append("False");
    CCPMYawStabilizationInManualModeEnumOptions.append("True");
    fields.append( new UAVObjectField(QString("CCPMYawStabilizationInManualMode"), QString(""), UAVObjectField::ENUM, CCPMYawStabilizationInManualModeElemNames, CCPMYawStabilizationInManualModeEnumOptions) );
    QStringList CCPMFlybarlessElemNames;
    CCPMFlybarlessElemNames.append("0");
    QStringList CCPMFlybarlessEnumOptions;
    CCPMFlybarlessEnumOptions.append("False");
    CCPMFlybarlessEnumOptions.append("True");
    fields.append( new UAVObjectField(QString("CCPMFlybarless"), QString(""), UAVObjectField::ENUM, CCPMFlybarlessElemNames, CCPMFlybarlessEnumOptions) );
    QStringList CCPMThrottleCurveElemNames;
    CCPMThrottleCurveElemNames.append("0");
    CCPMThrottleCurveElemNames.append("1");
    CCPMThrottleCurveElemNames.append("2");
    CCPMThrottleCurveElemNames.append("3");
    CCPMThrottleCurveElemNames.append("4");
    fields.append( new UAVObjectField(QString("CCPMThrottleCurve"), QString("percent"), UAVObjectField::FLOAT32, CCPMThrottleCurveElemNames, QStringList()) );
    QStringList CCPMPitchCurveElemNames;
    CCPMPitchCurveElemNames.append("0");
    CCPMPitchCurveElemNames.append("1");
    CCPMPitchCurveElemNames.append("2");
    CCPMPitchCurveElemNames.append("3");
    CCPMPitchCurveElemNames.append("4");
    fields.append( new UAVObjectField(QString("CCPMPitchCurve"), QString("percent"), UAVObjectField::FLOAT32, CCPMPitchCurveElemNames, QStringList()) );
    QStringList CCPMCollectiveConstantElemNames;
    CCPMCollectiveConstantElemNames.append("0");
    fields.append( new UAVObjectField(QString("CCPMCollectiveConstant"), QString("multiplier (0.0 -> 1.0)"), UAVObjectField::FLOAT32, CCPMCollectiveConstantElemNames, QStringList()) );
    QStringList CCPMCorrectionAngleElemNames;
    CCPMCorrectionAngleElemNames.append("0");
    fields.append( new UAVObjectField(QString("CCPMCorrectionAngle"), QString("degrees"), UAVObjectField::FLOAT32, CCPMCorrectionAngleElemNames, QStringList()) );
    QStringList CCPMAngleWElemNames;
    CCPMAngleWElemNames.append("0");
    fields.append( new UAVObjectField(QString("CCPMAngleW"), QString("degrees"), UAVObjectField::FLOAT32, CCPMAngleWElemNames, QStringList()) );
    QStringList CCPMAngleXElemNames;
    CCPMAngleXElemNames.append("0");
    fields.append( new UAVObjectField(QString("CCPMAngleX"), QString("degrees"), UAVObjectField::FLOAT32, CCPMAngleXElemNames, QStringList()) );
    QStringList CCPMAngleYElemNames;
    CCPMAngleYElemNames.append("0");
    fields.append( new UAVObjectField(QString("CCPMAngleY"), QString("degrees"), UAVObjectField::FLOAT32, CCPMAngleYElemNames, QStringList()) );
    QStringList CCPMAngleZElemNames;
    CCPMAngleZElemNames.append("0");
    fields.append( new UAVObjectField(QString("CCPMAngleZ"), QString("degrees"), UAVObjectField::FLOAT32, CCPMAngleZElemNames, QStringList()) );
    QStringList CCPMServoWElemNames;
    CCPMServoWElemNames.append("0");
    QStringList CCPMServoWEnumOptions;
    CCPMServoWEnumOptions.append("Channel0");
    CCPMServoWEnumOptions.append("Channel1");
    CCPMServoWEnumOptions.append("Channel2");
    CCPMServoWEnumOptions.append("Channel3");
    CCPMServoWEnumOptions.append("Channel4");
    CCPMServoWEnumOptions.append("Channel5");
    CCPMServoWEnumOptions.append("Channel6");
    CCPMServoWEnumOptions.append("Channel7");
    CCPMServoWEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("CCPMServoW"), QString("channel"), UAVObjectField::ENUM, CCPMServoWElemNames, CCPMServoWEnumOptions) );
    QStringList CCPMServoXElemNames;
    CCPMServoXElemNames.append("0");
    QStringList CCPMServoXEnumOptions;
    CCPMServoXEnumOptions.append("Channel0");
    CCPMServoXEnumOptions.append("Channel1");
    CCPMServoXEnumOptions.append("Channel2");
    CCPMServoXEnumOptions.append("Channel3");
    CCPMServoXEnumOptions.append("Channel4");
    CCPMServoXEnumOptions.append("Channel5");
    CCPMServoXEnumOptions.append("Channel6");
    CCPMServoXEnumOptions.append("Channel7");
    CCPMServoXEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("CCPMServoX"), QString("channel"), UAVObjectField::ENUM, CCPMServoXElemNames, CCPMServoXEnumOptions) );
    QStringList CCPMServoYElemNames;
    CCPMServoYElemNames.append("0");
    QStringList CCPMServoYEnumOptions;
    CCPMServoYEnumOptions.append("Channel0");
    CCPMServoYEnumOptions.append("Channel1");
    CCPMServoYEnumOptions.append("Channel2");
    CCPMServoYEnumOptions.append("Channel3");
    CCPMServoYEnumOptions.append("Channel4");
    CCPMServoYEnumOptions.append("Channel5");
    CCPMServoYEnumOptions.append("Channel6");
    CCPMServoYEnumOptions.append("Channel7");
    CCPMServoYEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("CCPMServoY"), QString("channel"), UAVObjectField::ENUM, CCPMServoYElemNames, CCPMServoYEnumOptions) );
    QStringList CCPMServoZElemNames;
    CCPMServoZElemNames.append("0");
    QStringList CCPMServoZEnumOptions;
    CCPMServoZEnumOptions.append("Channel0");
    CCPMServoZEnumOptions.append("Channel1");
    CCPMServoZEnumOptions.append("Channel2");
    CCPMServoZEnumOptions.append("Channel3");
    CCPMServoZEnumOptions.append("Channel4");
    CCPMServoZEnumOptions.append("Channel5");
    CCPMServoZEnumOptions.append("Channel6");
    CCPMServoZEnumOptions.append("Channel7");
    CCPMServoZEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("CCPMServoZ"), QString("channel"), UAVObjectField::ENUM, CCPMServoZElemNames, CCPMServoZEnumOptions) );
    QStringList CCPMThrottleElemNames;
    CCPMThrottleElemNames.append("0");
    QStringList CCPMThrottleEnumOptions;
    CCPMThrottleEnumOptions.append("Channel0");
    CCPMThrottleEnumOptions.append("Channel1");
    CCPMThrottleEnumOptions.append("Channel2");
    CCPMThrottleEnumOptions.append("Channel3");
    CCPMThrottleEnumOptions.append("Channel4");
    CCPMThrottleEnumOptions.append("Channel5");
    CCPMThrottleEnumOptions.append("Channel6");
    CCPMThrottleEnumOptions.append("Channel7");
    CCPMThrottleEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("CCPMThrottle"), QString("channel"), UAVObjectField::ENUM, CCPMThrottleElemNames, CCPMThrottleEnumOptions) );
    QStringList CCPMTailRotorElemNames;
    CCPMTailRotorElemNames.append("0");
    QStringList CCPMTailRotorEnumOptions;
    CCPMTailRotorEnumOptions.append("Channel0");
    CCPMTailRotorEnumOptions.append("Channel1");
    CCPMTailRotorEnumOptions.append("Channel2");
    CCPMTailRotorEnumOptions.append("Channel3");
    CCPMTailRotorEnumOptions.append("Channel4");
    CCPMTailRotorEnumOptions.append("Channel5");
    CCPMTailRotorEnumOptions.append("Channel6");
    CCPMTailRotorEnumOptions.append("Channel7");
    CCPMTailRotorEnumOptions.append("None");
    fields.append( new UAVObjectField(QString("CCPMTailRotor"), QString("channel"), UAVObjectField::ENUM, CCPMTailRotorElemNames, CCPMTailRotorEnumOptions) );
    QStringList ChannelUpdateFreqElemNames;
    ChannelUpdateFreqElemNames.append("0");
    ChannelUpdateFreqElemNames.append("1");
    fields.append( new UAVObjectField(QString("ChannelUpdateFreq"), QString("Hz"), UAVObjectField::INT16, ChannelUpdateFreqElemNames, QStringList()) );
    QStringList ChannelMaxElemNames;
    ChannelMaxElemNames.append("0");
    ChannelMaxElemNames.append("1");
    ChannelMaxElemNames.append("2");
    ChannelMaxElemNames.append("3");
    ChannelMaxElemNames.append("4");
    ChannelMaxElemNames.append("5");
    ChannelMaxElemNames.append("6");
    ChannelMaxElemNames.append("7");
    fields.append( new UAVObjectField(QString("ChannelMax"), QString("us"), UAVObjectField::INT16, ChannelMaxElemNames, QStringList()) );
    QStringList ChannelNeutralElemNames;
    ChannelNeutralElemNames.append("0");
    ChannelNeutralElemNames.append("1");
    ChannelNeutralElemNames.append("2");
    ChannelNeutralElemNames.append("3");
    ChannelNeutralElemNames.append("4");
    ChannelNeutralElemNames.append("5");
    ChannelNeutralElemNames.append("6");
    ChannelNeutralElemNames.append("7");
    fields.append( new UAVObjectField(QString("ChannelNeutral"), QString("us"), UAVObjectField::INT16, ChannelNeutralElemNames, QStringList()) );
    QStringList ChannelMinElemNames;
    ChannelMinElemNames.append("0");
    ChannelMinElemNames.append("1");
    ChannelMinElemNames.append("2");
    ChannelMinElemNames.append("3");
    ChannelMinElemNames.append("4");
    ChannelMinElemNames.append("5");
    ChannelMinElemNames.append("6");
    ChannelMinElemNames.append("7");
    fields.append( new UAVObjectField(QString("ChannelMin"), QString("us"), UAVObjectField::INT16, ChannelMinElemNames, QStringList()) );

    // Initialize object
    initializeFields(fields, (quint8*)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
}
Ejemplo n.º 22
0
/**
 * Constructor
 */
HwSettings::HwSettings(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList CC_RcvrPortElemNames;
    CC_RcvrPortElemNames.append("0");
    QStringList CC_RcvrPortEnumOptions;
    CC_RcvrPortEnumOptions.append("Disabled");
    CC_RcvrPortEnumOptions.append("PWM");
    CC_RcvrPortEnumOptions.append("PPM");
    CC_RcvrPortEnumOptions.append("PPM+PWM");
    CC_RcvrPortEnumOptions.append("PPM+Outputs");
    CC_RcvrPortEnumOptions.append("Outputs");
    fields.append( new UAVObjectField(QString("CC_RcvrPort"), QString("function"), UAVObjectField::ENUM, CC_RcvrPortElemNames, CC_RcvrPortEnumOptions, QString("")));
    QStringList CC_MainPortElemNames;
    CC_MainPortElemNames.append("0");
    QStringList CC_MainPortEnumOptions;
    CC_MainPortEnumOptions.append("Disabled");
    CC_MainPortEnumOptions.append("Telemetry");
    CC_MainPortEnumOptions.append("GPS");
    CC_MainPortEnumOptions.append("S.Bus");
    CC_MainPortEnumOptions.append("DSM2");
    CC_MainPortEnumOptions.append("DSMX (10bit)");
    CC_MainPortEnumOptions.append("DSMX (11bit)");
    CC_MainPortEnumOptions.append("DebugConsole");
    CC_MainPortEnumOptions.append("ComBridge");
    CC_MainPortEnumOptions.append("OsdHk");
    fields.append( new UAVObjectField(QString("CC_MainPort"), QString("function"), UAVObjectField::ENUM, CC_MainPortElemNames, CC_MainPortEnumOptions, QString("")));
    QStringList CC_FlexiPortElemNames;
    CC_FlexiPortElemNames.append("0");
    QStringList CC_FlexiPortEnumOptions;
    CC_FlexiPortEnumOptions.append("Disabled");
    CC_FlexiPortEnumOptions.append("Telemetry");
    CC_FlexiPortEnumOptions.append("GPS");
    CC_FlexiPortEnumOptions.append("I2C");
    CC_FlexiPortEnumOptions.append("PPM");
    CC_FlexiPortEnumOptions.append("DSM2");
    CC_FlexiPortEnumOptions.append("DSMX (10bit)");
    CC_FlexiPortEnumOptions.append("DSMX (11bit)");
    CC_FlexiPortEnumOptions.append("DebugConsole");
    CC_FlexiPortEnumOptions.append("ComBridge");
    CC_FlexiPortEnumOptions.append("OsdHk");
    fields.append( new UAVObjectField(QString("CC_FlexiPort"), QString("function"), UAVObjectField::ENUM, CC_FlexiPortElemNames, CC_FlexiPortEnumOptions, QString("")));
    QStringList RV_RcvrPortElemNames;
    RV_RcvrPortElemNames.append("0");
    QStringList RV_RcvrPortEnumOptions;
    RV_RcvrPortEnumOptions.append("Disabled");
    RV_RcvrPortEnumOptions.append("PWM");
    RV_RcvrPortEnumOptions.append("PPM");
    RV_RcvrPortEnumOptions.append("PPM+Outputs");
    RV_RcvrPortEnumOptions.append("Outputs");
    fields.append( new UAVObjectField(QString("RV_RcvrPort"), QString("function"), UAVObjectField::ENUM, RV_RcvrPortElemNames, RV_RcvrPortEnumOptions, QString("")));
    QStringList RV_AuxPortElemNames;
    RV_AuxPortElemNames.append("0");
    QStringList RV_AuxPortEnumOptions;
    RV_AuxPortEnumOptions.append("Disabled");
    RV_AuxPortEnumOptions.append("Telemetry");
    RV_AuxPortEnumOptions.append("DSM2");
    RV_AuxPortEnumOptions.append("DSMX (10bit)");
    RV_AuxPortEnumOptions.append("DSMX (11bit)");
    RV_AuxPortEnumOptions.append("ComAux");
    RV_AuxPortEnumOptions.append("ComBridge");
    RV_AuxPortEnumOptions.append("OsdHk");
    fields.append( new UAVObjectField(QString("RV_AuxPort"), QString("function"), UAVObjectField::ENUM, RV_AuxPortElemNames, RV_AuxPortEnumOptions, QString("")));
    QStringList RV_AuxSBusPortElemNames;
    RV_AuxSBusPortElemNames.append("0");
    QStringList RV_AuxSBusPortEnumOptions;
    RV_AuxSBusPortEnumOptions.append("Disabled");
    RV_AuxSBusPortEnumOptions.append("S.Bus");
    RV_AuxSBusPortEnumOptions.append("DSM2");
    RV_AuxSBusPortEnumOptions.append("DSMX (10bit)");
    RV_AuxSBusPortEnumOptions.append("DSMX (11bit)");
    RV_AuxSBusPortEnumOptions.append("ComAux");
    RV_AuxSBusPortEnumOptions.append("ComBridge");
    RV_AuxSBusPortEnumOptions.append("OsdHk");
    fields.append( new UAVObjectField(QString("RV_AuxSBusPort"), QString("function"), UAVObjectField::ENUM, RV_AuxSBusPortElemNames, RV_AuxSBusPortEnumOptions, QString("")));
    QStringList RV_FlexiPortElemNames;
    RV_FlexiPortElemNames.append("0");
    QStringList RV_FlexiPortEnumOptions;
    RV_FlexiPortEnumOptions.append("Disabled");
    RV_FlexiPortEnumOptions.append("I2C");
    RV_FlexiPortEnumOptions.append("DSM2");
    RV_FlexiPortEnumOptions.append("DSMX (10bit)");
    RV_FlexiPortEnumOptions.append("DSMX (11bit)");
    RV_FlexiPortEnumOptions.append("ComAux");
    RV_FlexiPortEnumOptions.append("ComBridge");
    fields.append( new UAVObjectField(QString("RV_FlexiPort"), QString("function"), UAVObjectField::ENUM, RV_FlexiPortElemNames, RV_FlexiPortEnumOptions, QString("")));
    QStringList RV_TelemetryPortElemNames;
    RV_TelemetryPortElemNames.append("0");
    QStringList RV_TelemetryPortEnumOptions;
    RV_TelemetryPortEnumOptions.append("Disabled");
    RV_TelemetryPortEnumOptions.append("Telemetry");
    RV_TelemetryPortEnumOptions.append("ComAux");
    RV_TelemetryPortEnumOptions.append("ComBridge");
    fields.append( new UAVObjectField(QString("RV_TelemetryPort"), QString("function"), UAVObjectField::ENUM, RV_TelemetryPortElemNames, RV_TelemetryPortEnumOptions, QString("")));
    QStringList RV_GPSPortElemNames;
    RV_GPSPortElemNames.append("0");
    QStringList RV_GPSPortEnumOptions;
    RV_GPSPortEnumOptions.append("Disabled");
    RV_GPSPortEnumOptions.append("Telemetry");
    RV_GPSPortEnumOptions.append("GPS");
    RV_GPSPortEnumOptions.append("ComAux");
    RV_GPSPortEnumOptions.append("ComBridge");
    fields.append( new UAVObjectField(QString("RV_GPSPort"), QString("function"), UAVObjectField::ENUM, RV_GPSPortElemNames, RV_GPSPortEnumOptions, QString("")));
    QStringList RM_RcvrPortElemNames;
    RM_RcvrPortElemNames.append("0");
    QStringList RM_RcvrPortEnumOptions;
    RM_RcvrPortEnumOptions.append("Disabled");
    RM_RcvrPortEnumOptions.append("PWM");
    RM_RcvrPortEnumOptions.append("PPM");
    RM_RcvrPortEnumOptions.append("PPM+PWM");
    RM_RcvrPortEnumOptions.append("PPM+Outputs");
    RM_RcvrPortEnumOptions.append("Outputs");
    fields.append( new UAVObjectField(QString("RM_RcvrPort"), QString("function"), UAVObjectField::ENUM, RM_RcvrPortElemNames, RM_RcvrPortEnumOptions, QString("")));
    QStringList RM_MainPortElemNames;
    RM_MainPortElemNames.append("0");
    QStringList RM_MainPortEnumOptions;
    RM_MainPortEnumOptions.append("Disabled");
    RM_MainPortEnumOptions.append("Telemetry");
    RM_MainPortEnumOptions.append("GPS");
    RM_MainPortEnumOptions.append("S.Bus");
    RM_MainPortEnumOptions.append("DSM2");
    RM_MainPortEnumOptions.append("DSMX (10bit)");
    RM_MainPortEnumOptions.append("DSMX (11bit)");
    RM_MainPortEnumOptions.append("DebugConsole");
    RM_MainPortEnumOptions.append("ComBridge");
    RM_MainPortEnumOptions.append("OsdHk");
    fields.append( new UAVObjectField(QString("RM_MainPort"), QString("function"), UAVObjectField::ENUM, RM_MainPortElemNames, RM_MainPortEnumOptions, QString("")));
    QStringList RM_FlexiPortElemNames;
    RM_FlexiPortElemNames.append("0");
    QStringList RM_FlexiPortEnumOptions;
    RM_FlexiPortEnumOptions.append("Disabled");
    RM_FlexiPortEnumOptions.append("Telemetry");
    RM_FlexiPortEnumOptions.append("GPS");
    RM_FlexiPortEnumOptions.append("I2C");
    RM_FlexiPortEnumOptions.append("DSM2");
    RM_FlexiPortEnumOptions.append("DSMX (10bit)");
    RM_FlexiPortEnumOptions.append("DSMX (11bit)");
    RM_FlexiPortEnumOptions.append("DebugConsole");
    RM_FlexiPortEnumOptions.append("ComBridge");
    RM_FlexiPortEnumOptions.append("OsdHk");
    fields.append( new UAVObjectField(QString("RM_FlexiPort"), QString("function"), UAVObjectField::ENUM, RM_FlexiPortElemNames, RM_FlexiPortEnumOptions, QString("")));
    QStringList TelemetrySpeedElemNames;
    TelemetrySpeedElemNames.append("0");
    QStringList TelemetrySpeedEnumOptions;
    TelemetrySpeedEnumOptions.append("2400");
    TelemetrySpeedEnumOptions.append("4800");
    TelemetrySpeedEnumOptions.append("9600");
    TelemetrySpeedEnumOptions.append("19200");
    TelemetrySpeedEnumOptions.append("38400");
    TelemetrySpeedEnumOptions.append("57600");
    TelemetrySpeedEnumOptions.append("115200");
    fields.append( new UAVObjectField(QString("TelemetrySpeed"), QString("bps"), UAVObjectField::ENUM, TelemetrySpeedElemNames, TelemetrySpeedEnumOptions, QString("")));
    QStringList GPSSpeedElemNames;
    GPSSpeedElemNames.append("0");
    QStringList GPSSpeedEnumOptions;
    GPSSpeedEnumOptions.append("2400");
    GPSSpeedEnumOptions.append("4800");
    GPSSpeedEnumOptions.append("9600");
    GPSSpeedEnumOptions.append("19200");
    GPSSpeedEnumOptions.append("38400");
    GPSSpeedEnumOptions.append("57600");
    GPSSpeedEnumOptions.append("115200");
    fields.append( new UAVObjectField(QString("GPSSpeed"), QString("bps"), UAVObjectField::ENUM, GPSSpeedElemNames, GPSSpeedEnumOptions, QString("")));
    QStringList ComUsbBridgeSpeedElemNames;
    ComUsbBridgeSpeedElemNames.append("0");
    QStringList ComUsbBridgeSpeedEnumOptions;
    ComUsbBridgeSpeedEnumOptions.append("2400");
    ComUsbBridgeSpeedEnumOptions.append("4800");
    ComUsbBridgeSpeedEnumOptions.append("9600");
    ComUsbBridgeSpeedEnumOptions.append("19200");
    ComUsbBridgeSpeedEnumOptions.append("38400");
    ComUsbBridgeSpeedEnumOptions.append("57600");
    ComUsbBridgeSpeedEnumOptions.append("115200");
    fields.append( new UAVObjectField(QString("ComUsbBridgeSpeed"), QString("bps"), UAVObjectField::ENUM, ComUsbBridgeSpeedElemNames, ComUsbBridgeSpeedEnumOptions, QString("")));
    QStringList USB_HIDPortElemNames;
    USB_HIDPortElemNames.append("0");
    QStringList USB_HIDPortEnumOptions;
    USB_HIDPortEnumOptions.append("USBTelemetry");
    USB_HIDPortEnumOptions.append("RCTransmitter");
    USB_HIDPortEnumOptions.append("Disabled");
    fields.append( new UAVObjectField(QString("USB_HIDPort"), QString("function"), UAVObjectField::ENUM, USB_HIDPortElemNames, USB_HIDPortEnumOptions, QString("")));
    QStringList USB_VCPPortElemNames;
    USB_VCPPortElemNames.append("0");
    QStringList USB_VCPPortEnumOptions;
    USB_VCPPortEnumOptions.append("USBTelemetry");
    USB_VCPPortEnumOptions.append("ComBridge");
    USB_VCPPortEnumOptions.append("DebugConsole");
    USB_VCPPortEnumOptions.append("Disabled");
    fields.append( new UAVObjectField(QString("USB_VCPPort"), QString("function"), UAVObjectField::ENUM, USB_VCPPortElemNames, USB_VCPPortEnumOptions, QString("")));
    QStringList OptionalModulesElemNames;
    OptionalModulesElemNames.append("CameraStab");
    OptionalModulesElemNames.append("GPS");
    OptionalModulesElemNames.append("ComUsbBridge");
    OptionalModulesElemNames.append("Fault");
    OptionalModulesElemNames.append("Altitude");
    OptionalModulesElemNames.append("Airspeed");
    OptionalModulesElemNames.append("TxPID");
    OptionalModulesElemNames.append("Autotune");
    OptionalModulesElemNames.append("VtolPathFollower");
    OptionalModulesElemNames.append("FixedWingPathFollower");
    OptionalModulesElemNames.append("Battery");
    OptionalModulesElemNames.append("Overo");
    OptionalModulesElemNames.append("MagBaro");
    OptionalModulesElemNames.append("OsdHk");
    QStringList OptionalModulesEnumOptions;
    OptionalModulesEnumOptions.append("Disabled");
    OptionalModulesEnumOptions.append("Enabled");
    fields.append( new UAVObjectField(QString("OptionalModules"), QString(""), UAVObjectField::ENUM, OptionalModulesElemNames, OptionalModulesEnumOptions, QString("")));
    QStringList ADCRoutingElemNames;
    ADCRoutingElemNames.append("adc0");
    ADCRoutingElemNames.append("adc1");
    ADCRoutingElemNames.append("adc2");
    ADCRoutingElemNames.append("adc3");
    QStringList ADCRoutingEnumOptions;
    ADCRoutingEnumOptions.append("Disabled");
    ADCRoutingEnumOptions.append("BatteryVoltage");
    ADCRoutingEnumOptions.append("BatteryCurrent");
    ADCRoutingEnumOptions.append("AnalogAirspeed");
    ADCRoutingEnumOptions.append("Generic");
    fields.append( new UAVObjectField(QString("ADCRouting"), QString(""), UAVObjectField::ENUM, ADCRoutingElemNames, ADCRoutingEnumOptions, QString("")));
    QStringList DSMxBindElemNames;
    DSMxBindElemNames.append("0");
    fields.append( new UAVObjectField(QString("DSMxBind"), QString(""), UAVObjectField::UINT8, DSMxBindElemNames, QStringList(), QString("")));
    QStringList WS2811LED_OutElemNames;
    WS2811LED_OutElemNames.append("0");
    QStringList WS2811LED_OutEnumOptions;
    WS2811LED_OutEnumOptions.append("ServoOut1");
    WS2811LED_OutEnumOptions.append("ServoOut2");
    WS2811LED_OutEnumOptions.append("ServoOut3");
    WS2811LED_OutEnumOptions.append("ServoOut4");
    WS2811LED_OutEnumOptions.append("ServoOut5");
    WS2811LED_OutEnumOptions.append("ServoOut6");
    WS2811LED_OutEnumOptions.append("FlexiPin3");
    WS2811LED_OutEnumOptions.append("FlexiPin4");
    WS2811LED_OutEnumOptions.append("Disabled");
    fields.append( new UAVObjectField(QString("WS2811LED_Out"), QString(""), UAVObjectField::ENUM, WS2811LED_OutElemNames, WS2811LED_OutEnumOptions, QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
/**
 * Constructor
 */
FixedWingPathFollowerSettings::FixedWingPathFollowerSettings(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList HorizontalVelMaxElemNames;
    HorizontalVelMaxElemNames.append("0");
    fields.append( new UAVObjectField(QString("HorizontalVelMax"), QString("m/s"), UAVObjectField::FLOAT32, HorizontalVelMaxElemNames, QStringList(), QString("")));
    QStringList HorizontalVelMinElemNames;
    HorizontalVelMinElemNames.append("0");
    fields.append( new UAVObjectField(QString("HorizontalVelMin"), QString("m/s"), UAVObjectField::FLOAT32, HorizontalVelMinElemNames, QStringList(), QString("")));
    QStringList VerticalVelMaxElemNames;
    VerticalVelMaxElemNames.append("0");
    fields.append( new UAVObjectField(QString("VerticalVelMax"), QString("m/s"), UAVObjectField::FLOAT32, VerticalVelMaxElemNames, QStringList(), QString("")));
    QStringList CourseFeedForwardElemNames;
    CourseFeedForwardElemNames.append("0");
    fields.append( new UAVObjectField(QString("CourseFeedForward"), QString("s"), UAVObjectField::FLOAT32, CourseFeedForwardElemNames, QStringList(), QString("")));
    QStringList ReverseCourseOverlapElemNames;
    ReverseCourseOverlapElemNames.append("0");
    fields.append( new UAVObjectField(QString("ReverseCourseOverlap"), QString("deg"), UAVObjectField::FLOAT32, ReverseCourseOverlapElemNames, QStringList(), QString("")));
    QStringList HorizontalPosPElemNames;
    HorizontalPosPElemNames.append("0");
    fields.append( new UAVObjectField(QString("HorizontalPosP"), QString("(m/s)/m"), UAVObjectField::FLOAT32, HorizontalPosPElemNames, QStringList(), QString("")));
    QStringList VerticalPosPElemNames;
    VerticalPosPElemNames.append("0");
    fields.append( new UAVObjectField(QString("VerticalPosP"), QString("(m/s)/m"), UAVObjectField::FLOAT32, VerticalPosPElemNames, QStringList(), QString("")));
    QStringList CoursePIElemNames;
    CoursePIElemNames.append("Kp");
    CoursePIElemNames.append("Ki");
    CoursePIElemNames.append("ILimit");
    fields.append( new UAVObjectField(QString("CoursePI"), QString("deg/deg"), UAVObjectField::FLOAT32, CoursePIElemNames, QStringList(), QString("")));
    QStringList SpeedPIElemNames;
    SpeedPIElemNames.append("Kp");
    SpeedPIElemNames.append("Ki");
    SpeedPIElemNames.append("ILimit");
    fields.append( new UAVObjectField(QString("SpeedPI"), QString("deg / (m/s)"), UAVObjectField::FLOAT32, SpeedPIElemNames, QStringList(), QString("")));
    QStringList VerticalToPitchCrossFeedElemNames;
    VerticalToPitchCrossFeedElemNames.append("Kp");
    VerticalToPitchCrossFeedElemNames.append("Max");
    fields.append( new UAVObjectField(QString("VerticalToPitchCrossFeed"), QString("deg / (m/s)"), UAVObjectField::FLOAT32, VerticalToPitchCrossFeedElemNames, QStringList(), QString("")));
    QStringList AirspeedToPowerCrossFeedElemNames;
    AirspeedToPowerCrossFeedElemNames.append("Kp");
    AirspeedToPowerCrossFeedElemNames.append("Max");
    fields.append( new UAVObjectField(QString("AirspeedToPowerCrossFeed"), QString("1 / (m/s)"), UAVObjectField::FLOAT32, AirspeedToPowerCrossFeedElemNames, QStringList(), QString("")));
    QStringList PowerPIElemNames;
    PowerPIElemNames.append("Kp");
    PowerPIElemNames.append("Ki");
    PowerPIElemNames.append("ILimit");
    fields.append( new UAVObjectField(QString("PowerPI"), QString("1/(m/s)"), UAVObjectField::FLOAT32, PowerPIElemNames, QStringList(), QString("")));
    QStringList RollLimitElemNames;
    RollLimitElemNames.append("Min");
    RollLimitElemNames.append("Neutral");
    RollLimitElemNames.append("Max");
    fields.append( new UAVObjectField(QString("RollLimit"), QString("deg"), UAVObjectField::FLOAT32, RollLimitElemNames, QStringList(), QString("")));
    QStringList PitchLimitElemNames;
    PitchLimitElemNames.append("Min");
    PitchLimitElemNames.append("Neutral");
    PitchLimitElemNames.append("Max");
    fields.append( new UAVObjectField(QString("PitchLimit"), QString("deg"), UAVObjectField::FLOAT32, PitchLimitElemNames, QStringList(), QString("")));
    QStringList ThrustLimitElemNames;
    ThrustLimitElemNames.append("Min");
    ThrustLimitElemNames.append("Neutral");
    ThrustLimitElemNames.append("Max");
    fields.append( new UAVObjectField(QString("ThrustLimit"), QString(""), UAVObjectField::FLOAT32, ThrustLimitElemNames, QStringList(), QString("")));
    QStringList SafetymarginsElemNames;
    SafetymarginsElemNames.append("Wind");
    SafetymarginsElemNames.append("Stallspeed");
    SafetymarginsElemNames.append("Lowspeed");
    SafetymarginsElemNames.append("Highspeed");
    SafetymarginsElemNames.append("Overspeed");
    SafetymarginsElemNames.append("Lowpower");
    SafetymarginsElemNames.append("Highpower");
    SafetymarginsElemNames.append("Pitchcontrol");
    fields.append( new UAVObjectField(QString("Safetymargins"), QString(""), UAVObjectField::FLOAT32, SafetymarginsElemNames, QStringList(), QString("")));
    QStringList UpdatePeriodElemNames;
    UpdatePeriodElemNames.append("0");
    fields.append( new UAVObjectField(QString("UpdatePeriod"), QString("ms"), UAVObjectField::INT32, UpdatePeriodElemNames, QStringList(), QString("")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}
/**
 * Constructor
 */
StabilizationSettingsBank1::StabilizationSettingsBank1(): UAVDataObject(OBJID, ISSINGLEINST, ISSETTINGS, NAME)
{
    // Create fields
    QList<UAVObjectField *> fields;
    QStringList ManualRateElemNames;
    ManualRateElemNames.append("Roll");
    ManualRateElemNames.append("Pitch");
    ManualRateElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("ManualRate"), QString("degrees/sec"), UAVObjectField::FLOAT32, ManualRateElemNames, QStringList(), QString("%BE:0:500; %BE:0:500; %BE:0:500")));
    QStringList MaximumRateElemNames;
    MaximumRateElemNames.append("Roll");
    MaximumRateElemNames.append("Pitch");
    MaximumRateElemNames.append("Yaw");
    fields.append( new UAVObjectField(QString("MaximumRate"), QString("degrees/sec"), UAVObjectField::FLOAT32, MaximumRateElemNames, QStringList(), QString("%BE:0:500; %BE:0:500; %BE:0:500")));
    QStringList RollRatePIDElemNames;
    RollRatePIDElemNames.append("Kp");
    RollRatePIDElemNames.append("Ki");
    RollRatePIDElemNames.append("Kd");
    RollRatePIDElemNames.append("ILimit");
    fields.append( new UAVObjectField(QString("RollRatePID"), QString(""), UAVObjectField::FLOAT32, RollRatePIDElemNames, QStringList(), QString("%BE:0:0.01; %BE:0:0.01; ; ")));
    QStringList PitchRatePIDElemNames;
    PitchRatePIDElemNames.append("Kp");
    PitchRatePIDElemNames.append("Ki");
    PitchRatePIDElemNames.append("Kd");
    PitchRatePIDElemNames.append("ILimit");
    fields.append( new UAVObjectField(QString("PitchRatePID"), QString(""), UAVObjectField::FLOAT32, PitchRatePIDElemNames, QStringList(), QString("%BE:0:0.01; %BE:0:0.01; ; ")));
    QStringList YawRatePIDElemNames;
    YawRatePIDElemNames.append("Kp");
    YawRatePIDElemNames.append("Ki");
    YawRatePIDElemNames.append("Kd");
    YawRatePIDElemNames.append("ILimit");
    fields.append( new UAVObjectField(QString("YawRatePID"), QString(""), UAVObjectField::FLOAT32, YawRatePIDElemNames, QStringList(), QString("%BE:0:0.01; %BE:0:0.01 ; ; ")));
    QStringList RollPIElemNames;
    RollPIElemNames.append("Kp");
    RollPIElemNames.append("Ki");
    RollPIElemNames.append("ILimit");
    fields.append( new UAVObjectField(QString("RollPI"), QString(""), UAVObjectField::FLOAT32, RollPIElemNames, QStringList(), QString("%BE:0:10; %BE:0:10; ")));
    QStringList PitchPIElemNames;
    PitchPIElemNames.append("Kp");
    PitchPIElemNames.append("Ki");
    PitchPIElemNames.append("ILimit");
    fields.append( new UAVObjectField(QString("PitchPI"), QString(""), UAVObjectField::FLOAT32, PitchPIElemNames, QStringList(), QString("%BE:0:10; %BE:0:10; ")));
    QStringList YawPIElemNames;
    YawPIElemNames.append("Kp");
    YawPIElemNames.append("Ki");
    YawPIElemNames.append("ILimit");
    fields.append( new UAVObjectField(QString("YawPI"), QString(""), UAVObjectField::FLOAT32, YawPIElemNames, QStringList(), QString("%BE:0:10; %BE:0:10; ")));
    QStringList RollMaxElemNames;
    RollMaxElemNames.append("0");
    fields.append( new UAVObjectField(QString("RollMax"), QString("degrees"), UAVObjectField::UINT8, RollMaxElemNames, QStringList(), QString("%BE:0:180")));
    QStringList PitchMaxElemNames;
    PitchMaxElemNames.append("0");
    fields.append( new UAVObjectField(QString("PitchMax"), QString("degrees"), UAVObjectField::UINT8, PitchMaxElemNames, QStringList(), QString("%BE:0:180")));
    QStringList YawMaxElemNames;
    YawMaxElemNames.append("0");
    fields.append( new UAVObjectField(QString("YawMax"), QString("degrees"), UAVObjectField::UINT8, YawMaxElemNames, QStringList(), QString("%BE:0:180")));

    // Initialize object
    initializeFields(fields, (quint8 *)&data, NUMBYTES);
    // Set the default field values
    setDefaultFieldValues();
    // Set the object description
    setDescription(DESCRIPTION);

    // Set the Category of this object type
    setCategory(CATEGORY);

    connect(this, SIGNAL(objectUpdated(UAVObject *)), SLOT(emitNotifications()));
}