void OwnedData<std::string>::registerWrite()
{
    this->m_pDataRef = XPLMRegisterDataAccessor( this->m_dataRefIdentifier.c_str(), xplmType_Data, 1,
                                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                                 NULL, NULL, NULL, writeFuncStr, NULL, this );
    ensureValid();
}
void OwnedData<bool>::registerRead()
{
    this->m_pDataRef = XPLMRegisterDataAccessor( this->m_dataRefIdentifier.c_str(), xplmType_Int, 0,
                                                 readFunc<int>, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                                 NULL, NULL, NULL, NULL, this, NULL );
    ensureValid();
}
void OwnedData<double>::registerWrite()
{
    this->m_pDataRef = XPLMRegisterDataAccessor( this->m_dataRefIdentifier.c_str(), xplmType_Double, 1,
                                                 NULL, NULL, NULL, NULL, NULL, writeFunc<double>, NULL, NULL,
                                                 NULL, NULL, NULL, NULL, NULL, this );
    ensureValid();
}
void OwnedData<double>::registerRead()
{
    this->m_pDataRef = XPLMRegisterDataAccessor( this->m_dataRefIdentifier.c_str(), xplmType_Double, 0,
                                                 NULL, NULL, NULL, NULL, readFunc<double>, NULL, NULL, NULL,
                                                 NULL, NULL, NULL, NULL, this, NULL);
    ensureValid();
}
void OwnedData<std::string>::registerRead()
{
    this->m_pDataRef = XPLMRegisterDataAccessor( this->m_dataRefIdentifier.c_str(), xplmType_Data, 0,
                                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                                 NULL, NULL, readFuncStr, NULL, this, NULL );
    ensureValid();
}
void OwnedData<float>::registerReadWrite()
{
    this->m_pDataRef = XPLMRegisterDataAccessor( this->m_dataRefIdentifier.c_str(), xplmType_Float, 1,
                                                 NULL, NULL, readFunc<float>, writeFunc<float>, NULL, NULL, NULL, NULL,
                                                 NULL, NULL, NULL, NULL, this, this );
    ensureValid();
}
Exemple #7
0
int XPlanePlugin::pluginStart(char * outName, char * outSig, char *outDesc) {
    // Set plugin info
    INFO << "Plugin started";
    strcpy(outName, "ExtPlane");
    strcpy(outSig, "org.vranki.extplaneplugin");
    strcpy(outDesc, "Read and write X-Plane datarefs from external programs using TCP sockets.");

    // Init application and server
    app = new QCoreApplication(argc, &argv);
    server = new TcpServer(this, this);
    connect(server, SIGNAL(setFlightLoopInterval(float)), this, SLOT(setFlightLoopInterval(float)));

    // Register the nav custom data accessors
    XPLMRegisterDataAccessor("extplane/navdata/5km",
                                                 xplmType_Data,                                 // The types we support
                                                 0,                                             // Writable
                                                 NULL, NULL,                                    // Integer accessors
                                                 NULL, NULL,                                    // Float accessors
                                                 NULL, NULL,                                    // Doubles accessors
                                                 NULL, NULL,                                    // Int array accessors
                                                 NULL, NULL,                                    // Float array accessors
                                                 NavCustomData::DataCallback_5km, NULL,         // Raw data accessors
                                                 NULL, NULL);                                   // Refcons not used
    XPLMRegisterDataAccessor("extplane/navdata/20km",
                                                 xplmType_Data,                                 // The types we support
                                                 0,                                             // Writable
                                                 NULL, NULL,                                    // Integer accessors
                                                 NULL, NULL,                                    // Float accessors
                                                 NULL, NULL,                                    // Doubles accessors
                                                 NULL, NULL,                                    // Int array accessors
                                                 NULL, NULL,                                    // Float array accessors
                                                 NavCustomData::DataCallback_20km, NULL,        // Raw data accessors
                                                 NULL, NULL);                                   // Refcons not used
    XPLMRegisterDataAccessor("extplane/navdata/100km",
                                                 xplmType_Data,                                 // The types we support
                                                 0,                                             // Writable
                                                 NULL, NULL,                                    // Integer accessors
                                                 NULL, NULL,                                    // Float accessors
                                                 NULL, NULL,                                    // Doubles accessors
                                                 NULL, NULL,                                    // Int array accessors
                                                 NULL, NULL,                                    // Float array accessors
                                                 NavCustomData::DataCallback_100km, NULL,       // Raw data accessors
                                                 NULL, NULL);                                   // Refcons not used

    app->processEvents();
    return 1;
}
Exemple #8
0
//==============================================================================
// Initialize radio transmission simulation
//==============================================================================
void radiosys_initialize()
{
	int i;

#if (!defined(DEDICATED_SERVER)) && (!defined(ORBITER_MODULE))
	XPLMRegisterDataAccessor(
	    "xsp/radio/serial/channel",xplmType_FloatArray,1,0,0,0,0,0,0,0,0,
	    radiosys_read_channel_fv,radiosys_write_channel_fv,0,0,
	    0,0);
	XPLMRegisterDataAccessor(
	    "xsp/radio/serial/send",xplmType_FloatArray,1,0,0,0,0,0,0,0,0,
	    0,radiosys_send_fv,0,0,
	    0,0);
	XPLMRegisterDataAccessor(
	    "xsp/radio/serial/recv",xplmType_FloatArray,1,0,0,0,0,0,0,0,0,
	    radiosys_recv_fv,0,0,0,
	    0,0);
#endif

	//Function to transmit arbitrary data
	lua_createtable(L,0,32);
	lua_setglobal(L,"RadioAPI");
	//Transmit from a vessel to all other vessels
	highlevel_addfunction("RadioAPI","Transmit",radiosys_highlevel_transmit);
	//Read data received by this vessel
	highlevel_addfunction("RadioAPI","Receive",radiosys_highlevel_receive);
	//Writes data directly into vessels receive buffer. Used by networking when receiving data from remote server
	highlevel_addfunction("RadioAPI","WriteReceiveBuffer",radiosys_highlevel_write_vessel_recvbuffer);
	//Mark channel as receiveable for the vessel
	highlevel_addfunction("RadioAPI","SetCanChannelReceive",radiosys_highlevel_set_canreceive);

	//Setup channels
	for (i = 0; i < RADIOSYS_MAX_CHANNELS; i++) {
		radiosys_channels[i].prev_time = 0.0;
		radiosys_channels[i].frequency = radiosys_channel_allocation[i*2+0];
		radiosys_channels[i].bps = (int)(radiosys_channel_allocation[i*2+1]*1000);
	}

	//Reset radio system timing
	radiosys_time = 0.0;

}
//  ***** Process Switch Panel Datareferences  *****
void process_switch_register_xsaitekpanels_datareference()

{
    SwitchStartOffOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/startoff/status",
                             xplmType_Int,
                             1,
                             SwitchStartOffPositionGetDataiCallback,
                             SwitchStartOffPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchStartRightOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/startright/status",
                             xplmType_Int,
                             1,
                             SwitchStartRightPositionGetDataiCallback,
                             SwitchStartRightPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchStartLeftOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/startleft/status",
                             xplmType_Int,
                             1,
                             SwitchStartLeftPositionGetDataiCallback,
                             SwitchStartLeftPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchStartBothOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/startboth/status",
                             xplmType_Int,
                             1,
                             SwitchStartBothPositionGetDataiCallback,
                             SwitchStartBothPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchStartStartOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/startstart/status",
                             xplmType_Int,
                             1,
                             SwitchStartStartPositionGetDataiCallback,
                             SwitchStartStartPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);


    SwitchBatOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/bat/status",
                             xplmType_Int,
                             1,
                             SwitchBatPositionGetDataiCallback,
                             SwitchBatPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);


    SwitchAltOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/alt/status",
                             xplmType_Int,
                             1,
                             SwitchAltPositionGetDataiCallback,
                             SwitchAltPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchAvOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/av/status",
                             xplmType_Int,
                             1,
                             SwitchAvPositionGetDataiCallback,
                             SwitchAvPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchFuelOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/fuel/status",
                             xplmType_Int,
                             1,
                             SwitchFuelPositionGetDataiCallback,
                             SwitchFuelPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchDiceOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/dice/status",
                             xplmType_Int,
                             1,
                             SwitchDicePositionGetDataiCallback,
                             SwitchDicePositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchPitotOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/pitot/status",
                             xplmType_Int,
                             1,
                             SwitchPitotPositionGetDataiCallback,
                             SwitchPitotPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchGearUpOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/gearup/status",
                             xplmType_Int,
                             1,
                             SwitchGearUpPositionGetDataiCallback,
                             SwitchGearUpPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchGearDnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/geardn/status",
                             xplmType_Int,
                             1,
                             SwitchGearDnPositionGetDataiCallback,
                             SwitchGearDnPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchCowlOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/cowl/status",
                             xplmType_Int,
                             1,
                             SwitchCowlPositionGetDataiCallback,
                             SwitchCowlPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);


    SwitchPanelOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/panel/status",
                             xplmType_Int,
                             1,
                             SwitchPanelPositionGetDataiCallback,
                             SwitchPanelPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchBeaconOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/beacon/status",
                             xplmType_Int,
                             1,
                             SwitchBeaconPositionGetDataiCallback,
                             SwitchBeaconPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchNavOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/nav/status",
                             xplmType_Int,
                             1,
                             SwitchNavPositionGetDataiCallback,
                             SwitchNavPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchStrobeOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/strobe/status",
                             xplmType_Int,
                             1,
                             SwitchStrobePositionGetDataiCallback,
                             SwitchStrobePositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchTaxiOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/taxi/status",
                             xplmType_Int,
                             1,
                             SwitchTaxiPositionGetDataiCallback,
                             SwitchTaxiPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    SwitchLandingOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/switchpanel/landing/status",
                             xplmType_Int,
                             1,
                             SwitchLandingPositionGetDataiCallback,
                             SwitchLandingPositionSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

return;
}
Exemple #10
0
//  ***** Switch Data Process  *****
void process_multi_panel_datareferences()

{
    MultiAltSwitchOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/altswitch/status",
                             xplmType_Int,
                             1,
                             MultiAltSwitchStatusGetDataiCallback,
                             MultiAltSwitchStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiVsSwitchOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/vsswitch/status",
                             xplmType_Int,
                             1,
                             MultiVsSwitchStatusGetDataiCallback,
                             MultiVsSwitchStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiIasSwitchOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/iasswitch/status",
                             xplmType_Int,
                             1,
                             MultiIasSwitchStatusGetDataiCallback,
                             MultiIasSwitchStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiHdgSwitchOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/hdgswitch/status",
                             xplmType_Int,
                             1,
                             MultiHdgSwitchStatusGetDataiCallback,
                             MultiHdgSwitchStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiCrsSwitchOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/crsswitch/status",
                             xplmType_Int,
                             1,
                             MultiCrsSwitchStatusGetDataiCallback,
                             MultiCrsSwitchStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiKnobIncOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/knobinc/status",
                             xplmType_Int,
                             1,
                             MultiKnobIncStatusGetDataiCallback,
                             MultiKnobIncStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiKnobDecOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/knobdec/status",
                             xplmType_Int,
                             1,
                             MultiKnobDecStatusGetDataiCallback,
                             MultiKnobDecStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiAtOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/at/status",
                             xplmType_Int,
                             1,
                             MultiAtStatusGetDataiCallback,
                             MultiAtStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiTrimUpOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/trimup/status",
                             xplmType_Int,
                             1,
                             MultiTrimUpStatusGetDataiCallback,
                             MultiTrimUpStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiTrimDnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/trimdn/status",
                             xplmType_Int,
                             1,
                             MultiTrimDnStatusGetDataiCallback,
                             MultiTrimDnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiFlapsUpOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/flapsup/status",
                             xplmType_Int,
                             1,
                             MultiFlapsUpStatusGetDataiCallback,
                             MultiFlapsUpStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiFlapsDnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/flapsdn/status",
                             xplmType_Int,
                             1,
                             MultiFlapsDnStatusGetDataiCallback,
                             MultiFlapsDnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiApBtnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/apbtn/status",
                             xplmType_Int,
                             1,
                             MultiApBtnStatusGetDataiCallback,
                             MultiApBtnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiHdgBtnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/hdgbtn/status",
                             xplmType_Int,
                             1,
                             MultiHdgBtnStatusGetDataiCallback,
                             MultiHdgBtnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiNavBtnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/navbtn/status",
                             xplmType_Int,
                             1,
                             MultiNavBtnStatusGetDataiCallback,
                             MultiNavBtnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiIasBtnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/iasbtn/status",
                             xplmType_Int,
                             1,
                             MultiIasBtnStatusGetDataiCallback,
                             MultiIasBtnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiAltBtnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/altbtn/status",
                             xplmType_Int,
                             1,
                             MultiAltBtnStatusGetDataiCallback,
                             MultiAltBtnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiVsBtnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/vsbtn/status",
                             xplmType_Int,
                             1,
                             MultiVsBtnStatusGetDataiCallback,
                             MultiVsBtnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiAprBtnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/aprbtn/status",
                             xplmType_Int,
                             1,
                             MultiAprBtnStatusGetDataiCallback,
                             MultiAprBtnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

    MultiRevBtnOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/multipanel/revbtn/status",
                             xplmType_Int,
                             1,
                             MultiRevBtnStatusGetDataiCallback,
                             MultiRevBtnStatusSetDataiCallback,
                             NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                             NULL, NULL, NULL, NULL, NULL);

}
Exemple #11
0
//  ***** Radio3 Data Process  *****
void process_radio3_upper_datareference()

{
    Rad3UpperCom1OwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprcom1/status",
                                                         xplmType_Int,
                                                         1,
                                                         Rad3UprCom1StatusGetDataiCallback,
                                                         Rad3UprCom1StatusSetDataiCallback,
                                                         NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                                         NULL, NULL, NULL, NULL, NULL);





        Rad3UpperCom2OwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprcom2/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprCom2StatusGetDataiCallback,
                                 Rad3UprCom2StatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);




        Rad3UpperNav1OwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprnav1/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprNav1StatusGetDataiCallback,
                                 Rad3UprNav1StatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);

        Rad3UpperNav2OwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprnav2/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprNav2StatusGetDataiCallback,
                                 Rad3UprNav2StatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);

        Rad3UpperAdfOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3upradf/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprAdfStatusGetDataiCallback,
                                 Rad3UprAdfStatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);

        Rad3UpperDmeOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprdme/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprDmeStatusGetDataiCallback,
                                 Rad3UprDmeStatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);

        Rad3UpperXpdrOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprxpdr/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprXpdrStatusGetDataiCallback,
                                 Rad3UprXpdrStatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);




        Rad3UpperCorseIncOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprcorseinc/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprCorseIncStatusGetDataiCallback,
                                 Rad3UprCorseIncStatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);

        Rad3UpperCorseDecOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprcorsedec/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprCorseDecStatusGetDataiCallback,
                                 Rad3UprCorseDecStatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);

        Rad3UpperFineIncOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprfineinc/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprFineIncStatusGetDataiCallback,
                                 Rad3UprFineIncStatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);

        Rad3UpperFineDecOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3uprfinedec/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprFineDecStatusGetDataiCallback,
                                 Rad3UprFineDecStatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);

        Rad3UpperActStbyOwnedDataRef = XPLMRegisterDataAccessor("bgood/xsaitekpanels/radiopanel/rad3upractstby/status",
                                 xplmType_Int,
                                 1,
                                 Rad3UprActStbyStatusGetDataiCallback,
                                 Rad3UprActStbyStatusSetDataiCallback,
                                 NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                 NULL, NULL, NULL, NULL, NULL);




}