Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
daq_device_gauss.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file daq_device_gauss.h
1 #ifndef __DAQ_DEVICE_PLUGINEXAMPLE__
2 #define __DAQ_DEVICE_PLUGINEXAMPLE__
3 
4 
5 
6 #include <daq_device.h>
7 #include <pulserTriggerHandler.h>
8 #include <iostream>
9 
10 
11 // this is part of the example how to build a plugin.
12 // It consists of a (silly) daq_device class (which creates a
13 // packet of type ID4EVT where channel i has the value i), and
14 // the actual "plugin" part, a plugabble class called
15 // gauss_plugin, which inherits from RCDAQPlugin.
16 
17 // Also note that the plugin class can support more than one
18 // daq_device (here we have only one).
19 
20 class simpleRandom;
21 
22 
23 class daq_device_gauss : public daq_device {
24 
25 public:
26 
27  daq_device_gauss (const int eventtype
28  , const int subeventid
29  , const int trigger_enabled=0);
30 
31 
33 
34 
35  void identify(std::ostream& os = std::cout) const;
36 
37  int max_length(const int etype) const;
38 
39  // functions to do the work
40 
41  int put_data(const int etype, int * adr, const int length);
42 
43  int init();
44 
45  int rearm( const int etype);
46 
47 protected:
48 
49 
50 
52  float _mean;
53  float _sigma;
56 
57 };
58 
59 
60 #endif