ioControl Programmer Notes

ioControl is a series of functions which are included in any module which uses input devices. These functions allow the module recieve information for an approved SSL input device which can then be used to control some function.

 Application Name:

N/A this is only a series of function to be compiled with another application

 Development Path:

ACS/ioControl

 Wm_appl =

N/A

 Wm_winNum =

 N/A but only 1 window is defined in these functions

Contents

Form Information
<> IO Control = ioControl
Linking to ioControl
 
Form Infomation

Wm_form[1] = ioControl
Label = "<> IO Control"
 
Objects
 
ioControlSysObj
[0] File Menu button -> wm_fileMenuButtonCB(0)
[1] Command Authority Button -> wmu_CmdCB(0)
[2] Display Menu button -> wm_displayMenuButtonCB(0)
 
ioControlChoiceObj
[1] Input Source Choice-> ioc_ChoiceCB(1)
[2] Mapping Choice -> ioc_ChoiceCB(2)
 
ioControlLabelObj
[1] Input Sourcee
[2] Mapping
 
ioControlCmdObj
[1-10] Scaleing Inputs - > ioc_Scale(i)
where i is the id of the input
1=X, 2=Y,3 =Z,4 =Roll, 5=Pitch, 6=Yaw, 7=SEW, 8=8DOF, 9=Translational, 10=Rotational
[11-19] Spaceball Buttons -> ioc_ButtonCB(i)
[20-24] HC Buttons -> ioc_ButtonCB(i)
[25-29] Mouse Buttons -> ioc_ButtonCB(i)
 
ioControlTelObj
[1-6] Input Device Value Sliders
where i is the id of the slider 1=X,2=Y,3=Z,4=Roll,5=Pitch,6=Yaw
 
Menus
ioc_InputButton
ioc_InputButton [i]-> ioc_InputCB(i)
0 = None, 1 = HCA, 2 = HCB, 3 = HCC, 4 = SBA, 5 = SBB
6 = HCA_Sim, 7 = HCB_Sim, 8 = LogA(Head), 9 = LogB(Mouse),
10 = MagA(Head), 11 = MagB(Mouse), 12 = MagC(Mouse)
 
ioc_MappingMenu
ioc_MappingButton[i] -> ioc_MappingCB(i)
1 = Linear, 2 = Square

Linking to ioControl

Files Required

 headers

ioc_CB.h

ioc_form.h

 files

ioc_CB.c - holds ioControl interactive functions functions

ioc_form.c - has functions used to create the ioControl form

 libraries

libforms.a

libforms.so.0.88 - needed at run time

 
API Functions
 Function Prototype:
void ioc_Initialize(void)
 Description: This function executes the differenct initialization functions.
 Notes: Call during initialization before wm_setUpWm
 Function Prototype:
void ioc_ioControlDG(void)
 Description: This function updates the graphics for the ioControl Form.
 Notes: Call during main event loop
 Function Prototype:
void ioc_programQuitCB(void)
 Description: This function is called when exiting the module, it deallocates the NDDS dummy variable.
 Notes: Call as process is shutting down
 Function Prototype:
void ioc_activateCmdObj(short activate)
 Description: This function updates all command objects for the application, either activating or deactivating them.
 Notes: Call when activating/deactivating the other forms
 
MUST HAVE THIS FUNCTION IN THE LOCAL APPLICATION
 Function Prototype:
void CmdCB (FL_OBJECT *ob, long data)
 Description: This function performs the necessary arrangement to request command authority.
 Notes: This function is automatically handled by XForms when one of the command authority buttons is pressed.