GSI Object Oriented Online Offline (Go4)
GO4-5.3.2
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Go4ExampleMesh
TMeshB3AnlProc.cxx
Go to the documentation of this file.
1
// $Id: TMeshB3AnlProc.cxx 933 2013-01-29 15:27:58Z linev $
2
//-----------------------------------------------------------------------
3
// The GSI Online Offline Object Oriented (Go4) Project
4
// Experiment Data Processing at EE department, GSI
5
//-----------------------------------------------------------------------
6
// Copyright (C) 2000- GSI Helmholtzzentrum für Schwerionenforschung GmbH
7
// Planckstr. 1, 64291 Darmstadt, Germany
8
// Contact: http://go4.gsi.de
9
//-----------------------------------------------------------------------
10
// This software can be used under the license agreements as stated
11
// in Go4License.txt file which is part of the distribution.
12
//-----------------------------------------------------------------------
13
14
#include "
TMeshB3AnlProc.h
"
15
16
#include "
TGo4Log.h
"
17
#include "
TGo4UserException.h
"
18
19
#include "
TMeshRawEvent.h
"
20
#include "
TMeshB3OutputEvent.h
"
21
#include "
TMeshB3InputEvent.h
"
22
23
//***********************************************************
24
// this one is used in TXXXAnlFact
25
TMeshB3AnlProc::TMeshB3AnlProc
(
const
char
* name)
26
:
TGo4EventProcessor
(name),fxInput(0)
27
{
28
TGo4Log::Info
(
"TMeshB3AnlProc: Create"
);
29
}
30
//***********************************************************
31
TMeshB3AnlProc::TMeshB3AnlProc
()
32
:
TGo4EventProcessor
(
"Processor3"
),fxInput(0)
33
{
34
}
35
//***********************************************************
36
TMeshB3AnlProc::~TMeshB3AnlProc
()
37
{
38
}
39
//***********************************************************
40
41
//-----------------------------------------------------------
42
void
TMeshB3AnlProc::Analysis
(
TMeshB3OutputEvent
* poutevt)
43
{
44
if
(
fxInput
==0)
45
{
46
// lazy init for input event from framework
47
TGo4EventElement
* providerinput=
GetInputEvent
(
"Input3Provider"
);
48
TMeshRawEvent
* raw=
dynamic_cast<
TMeshRawEvent
*
>
(providerinput);
49
if
(raw)
50
fxInput
=&(raw->
fxSub3
);
51
// provider delivers full raw event, we use only our component
52
else
53
fxInput
=
dynamic_cast<
TMeshB3InputEvent
*
>
(providerinput);
54
// provider with partial io delivers just our component
55
}
56
if
(
fxInput
)
57
{
58
// do the processing here:
59
for
(Int_t i=0;i<4;i++)
60
{
61
poutevt->
frData
[i]=(Float_t)
fxInput
->
fiCrate3
[i];
62
}
63
64
65
}
66
else
67
{
68
throw
TGo4UserException
(3,
"Error: no input event for processor %s"
,GetName());
69
}
70
71
}
// BuildCalEvent
TMeshB3AnlProc::~TMeshB3AnlProc
virtual ~TMeshB3AnlProc()
Definition:
TMeshB3AnlProc.cxx:36
TGo4UserException
Definition:
TGo4UserException.h:42
TMeshB3AnlProc.h
TMeshB3OutputEvent::frData
Float_t frData[16]
Definition:
TMeshB3OutputEvent.h:31
TMeshB3AnlProc::TMeshB3AnlProc
TMeshB3AnlProc()
Definition:
TMeshB3AnlProc.cxx:31
TMeshB3InputEvent
Definition:
TMeshB3InputEvent.h:22
TGo4Log.h
TGo4EventElement
Definition:
TGo4EventElement.h:36
TMeshB3OutputEvent.h
TMeshB3AnlProc::Analysis
void Analysis(TMeshB3OutputEvent *target)
Definition:
TMeshB3AnlProc.cxx:42
TMeshB3OutputEvent
Definition:
TMeshB3OutputEvent.h:22
TMeshB3AnlProc::fxInput
TMeshB3InputEvent * fxInput
Definition:
TMeshB3AnlProc.h:30
TMeshRawEvent::fxSub3
TMeshB3InputEvent fxSub3
Definition:
TMeshRawEvent.h:49
TGo4EventProcessor::GetInputEvent
TGo4EventElement * GetInputEvent()
Definition:
TGo4EventProcessor.h:83
TMeshB3InputEvent.h
TGo4UserException.h
TMeshRawEvent.h
TMeshB3InputEvent::fiCrate3
Int_t fiCrate3[16]
Definition:
TMeshB3InputEvent.h:31
TMeshRawEvent
Definition:
TMeshRawEvent.h:26
TGo4EventProcessor
Definition:
TGo4EventProcessor.h:64
TGo4Log::Info
static void Info(const char *text,...)
Definition:
TGo4Log.cxx:283
Generated on Fri Oct 26 2018 08:34:51 for GSI Object Oriented Online Offline (Go4) by
1.8.8