To create a new TaurusGUI application the use can run a wizard by
haspp09% taurusgui --new-guiAn example of config.xml file looks as follows:
<taurusgui_config>
<GUI_NAME>Experiment Control Panel</GUI_NAME>
<ORGANIZATION>DESY</ORGANIZATION>
<ORGANIZATION_LOGO>./desylogo.png</ORGANIZATION_LOGO>
<MACROSERVER_NAME>p09/macroserver/haso228k</MACROSERVER_NAME>
<DOOR_NAME>p09/door/haso228k</DOOR_NAME>
<INSTRUMENTS_FROM_POOL>False</INSTRUMENTS_FROM_POOL>
<PanelDescriptions>
<PanelDescription>
<name>NXSelector</name>
<classname>Selector</classname>
<modulename>nxselector.Selector</modulename>
<floating>True</floating>
<sharedDataWrite>
<item datauid="expConfChanged" signalName="experimentConfigurationChanged" />
<item datauid="doorName" signalName="doorName" />
</sharedDataWrite>
<sharedDataRead>
<item datauid="expConfChanged" slotName="resetConfiguration" />
<item datauid="doorName" slotName="updateDoorName" />
</sharedDataRead>
<model>p09/nxsrecselector/haso228k</model>
</PanelDescription>
</PanelDescriptions>
</taurusgui_config>
where to enable communication between the Component Selector and the MacroGui the
<sharedDataRead>
and <sharedDataWrite> tags were added manually.
The other option is to add the following configuration into config.py
MACROSERVER_NAME = 'p09/macroserver/haso228k'
DOOR_NAME = 'p09/door/haso228k'
nxselector = PanelDescription(
'NXSelector',
classname = 'Selector',
modulename = 'nxsselector.Selector',
floating = False,
sharedDataRead={
'expConfChanged':'resetConfiguration',
'doorName':'updateDoorName'
},
sharedDataWrite={
'expConfChanged': 'experimentConfigurationChanged',
'doorName':'doorName'
},
model='p09/nxsrecselector/haso228k'
)
where model is the device name of the current NXSRecSelector server.