~sophie-middleton08/maus/devel

« back to all changes in this revision

Viewing changes to src/common_cpp/JsonCppProcessors/Pmt1Processor.hh

  • Committer: Chris Rogers
  • Date: 2012-05-10 20:25:42 UTC
  • mfrom: (663.6.10 merge)
  • Revision ID: chris.rogers@stfc.ac.uk-20120510202542-cr294lltgh14lde0
Tags: MAUS-v0.2.2
ReleaseĀ 0.2.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* This file is part of MAUS: http://micewww.pp.rl.ac.uk/projects/maus
 
2
 *
 
3
 * MAUS is free software: you can redistribute it and/or modify
 
4
 * it under the terms of the GNU General Public License as published by
 
5
 * the Free Software Foundation, either version 3 of the License, or
 
6
 * (at your option) any later version.
 
7
 *
 
8
 * MAUS is distributed in the hope that it will be useful,
 
9
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
10
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
11
 * GNU General Public License for more details.
 
12
 *
 
13
 * You should have received a copy of the GNU General Public License
 
14
 * along with MAUS.  If not, see <http://www.gnu.org/licenses/>.
 
15
 */
 
16
 
 
17
#ifndef _SRC_COMMON_CPP_JSONCPPPROCESSORS_PMT1PROCESSOR_
 
18
#define _SRC_COMMON_CPP_JSONCPPPROCESSORS_PMT1PROCESSOR_
 
19
 
 
20
#include "src/common_cpp/DataStructure/Pmt1.hh"
 
21
#include "src/common_cpp/JsonCppProcessors/ObjectProcessor.hh"
 
22
#include "src/common_cpp/JsonCppProcessors/PrimitivesProcessors.hh"
 
23
 
 
24
namespace MAUS {
 
25
 
 
26
/** @class Pmt1Processor Conversions for Pmt1 between C++ and Json 
 
27
 *
 
28
 *  @var _raw_time_proc_proc Processor for _raw_time
 
29
 *  @var _charge_proc_proc Processor for _charge
 
30
 *  @var _leading_time_proc_proc Processor for _leading_time
 
31
 *  @var _time_proc_proc Processor for _time
 
32
 *  @var _tof_key_proc_proc Processor for _tof_key
 
33
 *  @var _trigger_request_leading_time_proc_proc Processor for _trigger_request_leading_time
 
34
 */
 
35
 
 
36
class Pmt1Processor : public ObjectProcessor<Pmt1> {
 
37
  public:
 
38
    /** Set up processors and register branches
 
39
     *
 
40
     *  Everything else is handled by the base class
 
41
     */
 
42
    Pmt1Processor();
 
43
 
 
44
  private:
 
45
    DoubleProcessor _raw_time_proc;
 
46
    IntProcessor _charge_proc;
 
47
    IntProcessor _leading_time_proc;
 
48
    DoubleProcessor _time_proc;
 
49
    StringProcessor _tof_key_proc;
 
50
    IntProcessor _trigger_request_leading_time_proc;
 
51
};
 
52
}  // namespace MAUS
 
53
 
 
54
#endif  // #define _SRC_COMMON_CPP_JSONCPPPROCESSORS_PMT1PROCESSOR_
 
55