]> jspc29.x-matter.uni-frankfurt.de Git - daqtools.git/commitdiff
added DABC config file
authorYour Name <you@example.com>
Thu, 6 Mar 2014 10:17:56 +0000 (11:17 +0100)
committerYour Name <you@example.com>
Thu, 6 Mar 2014 10:17:56 +0000 (11:17 +0100)
users/gsi_xbox/EventBuilder.xml [new file with mode: 0644]

diff --git a/users/gsi_xbox/EventBuilder.xml b/users/gsi_xbox/EventBuilder.xml
new file mode 100644 (file)
index 0000000..ed4ead3
--- /dev/null
@@ -0,0 +1,127 @@
+<?xml version="1.0"?>
+
+<!-- 
+This is example file how HADAQ event building should be configured in DABC.
+Event building process implemented in Combiner module of hadaq::CombinerModule class.
+Module can have several inputs, each with separate port number for receiving data 
+from TRB boards. In each input port configuration only port number has meaning.
+First output of combiner module reserved for the connection to 
+the optional MBS transmitter module. Second output can be use to store data in hld files. 
+To enable storage, one should specify two output ports and correctly configure Output1 of combiner module.
+
+To enable HLD file storage one should specify NumOutputs value="2" for Combiner module
+amnd provide hld file name for Output1 port   
+     <OutputPort name="Output1" url="hld://dabc.hld?maxsize=2000"/>
+File name fill be extended according to HADAQ naming convetion.       
+
+Optionally one can enable MBS transmitter module, which converts HLD to LMD format.
+To enable transmitter, one should specify auto="true" in configuration which says DABC
+to automatically create module when starting application. 
+First output of the module reserved for stream server, second output can be used to
+store data in lmd files. 
+
+By default, HTTP server is enabled. Do disable it, remove <HttpServer> section or
+put <HttpServer name="http" auto="false">. One could change http port number. 
+When dabc runs, in any browser address like
+http://your_dabc_host_name:8090 can be opened. At the moment http server provides: 
+  - ratemeters from EventBuilder and Transmitter
+  - log fields 
+  - commands to start/stop hld and lmd files from browser
+
+It is also possible to attach go4 analysis to that server, that also histograms
+from online analysis will appear. For that one should specify 
+"-dabc your_dabc_host_name" argument when starting analysis. Like:
+   [shell] go4analysis -stream dabc_node -dabc dabc_node
+When launching analysis from the gui, extra arguments "-dabc your_dabc_host_name" 
+should be specified.
+
+There is well-known problem with using VNC viewer and mbs stream server. 
+Both by default are using port 6002. One could change port number for stream server.
+Just set other number in configuration of output port of transmitter module, for instance
+       <OutputPort name="Output0" url="mbs://Stream:6789"/>
+In this case one should specify that port number when starting go4 analysis like:
+   [shell] go4analysis -stream dabc_node:6789 -dabc dabc_node:4444 
+When starting analysis from the go4 gui, one should specify stream server with port number too.
+
+-->
+
+<dabc version="2">
+  <Context host="localhost" name="EventBuilder">
+    <Run>
+      <lib value="libDabcMbs.so"/>
+      <lib value="libDabcHadaq.so"/>  
+      <lib value="libDabcHttp.so"/>  
+      <lib value="libDabcRfio.so"/>  
+      <logfile value="hadaqevtbuild.log"/>
+      <loglimit value="1000000"/>
+      <control value="true"/>
+    </Run>
+    
+    <HttpServer name="http">
+       <port value="8090"/>
+    </HttpServer>
+
+    <MemoryPool name="Pool">
+       <BufferSize value="200000"/>
+       <NumBuffers value="1000"/>
+    </MemoryPool>
+
+    <Module name="Combiner" class="hadaq::CombinerModule">    
+        <!-- these parameters will force to create inputs/oputputs of module -->
+       <NumInputs value="1"/>
+       <NumOutputs value="1"/>
+
+       <InputPort name="Input0" url="hadaq://host:50000"/>
+       <InputPort name="Input1" url="hadaq://host:10102"/>
+       <InputPort name="Input2" url="hadaq://host:10103"/>
+       <InputPort name="Input3" url="hadaq://host:10104"/>
+       <InputPort name="Input4" url="hadaq://host:10105"/>
+
+       <InputPort name="Input*" queue="10" urlopt="udpbuf=200000&mtu=64512&flush=2&observer=false"/>
+       
+       <!--OutputPort name="Output1" url="hld:///linev/path/dabc.hld?maxsize=1900&rfio"/-->
+       <OutputPort name="Output1" url="hld://dabc.hld?maxsize=2000"/>
+
+       <DoShmControl value="false"/>  
+       <FlushTimeout value="2.0"/>   
+
+       <!-- take event sequence number from vulom/roc sync message at cts -->
+       <UseSyncSequenceNumber value="false"/>
+       <SyncSubeventId value="0x8000"/>
+       <SyncTriggerMask value="0x01"/>
+       <PrintSync value="false"/>
+       <FlushBySync value="false"/>
+
+       <!-- rate meters configuration -->
+       <HadaqData width="4" prec="2" low="0" up="10" debug="1"/>
+       <HadaqEvents width="5" prec="1" low="0" up="1000" debug="1"/>
+       <HadaqDroppedData width="5" prec="3" low="0" up="1" debug="1"/>
+       <HadaqLostEvents width="4" prec="2" low="0" up="100" debug="1"/>
+     </Module>
+
+     <Module name="OnlineServer" class="hadaq::MbsTransmitterModule" auto="true">
+       <NumInputs value="1"/>
+       <NumOutputs value="1"/>
+
+       <InputPort name="Input0" url="Combiner/Output0" queue="10"/>
+
+       <OutputPort name="Output0" url="mbs://Stream:6002"/>
+       <OutputPort name="Output1" url="lmd://test.lmd?maxsize=30&log=2"/>
+
+       <!-- this is 32-bit MBS subevent id, which than can be seen in the analysis. Here procid=0x1f is configured -->
+       <SubeventFullId value="0x000001F"/>
+
+       <!-- If true, all events with the same SYNC number will be merged together into same MBS event -->
+       <DoMergeSyncedEvents value="true"/>
+
+       <TransmitData width="5" prec="3" low="0" up="50" debug="1"/>
+       <TransmitEvents width="4" prec="1" low="0" up="100" debug="1"/>
+     </Module>
+
+  </Context>
+
+  <!--Context name="*">
+      <Thread name="CombinerThrdInp" class="dabc::SocketThread" affinity="+0"/>
+  </Context-->
+  
+</dabc>