GSI Object Oriented Online Offline (Go4)
GO4-6.3.0
Go4ExampleMesh
TMeshB3AnlProc.cxx
Go to the documentation of this file.
1
// $Id$
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 fuer 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)
27
{
28
TGo4Log::Info
(
"TMeshB3AnlProc: Create"
);
29
}
30
31
//***********************************************************
32
TMeshB3AnlProc::TMeshB3AnlProc
()
33
:
TGo4EventProcessor
(
"Processor3"
)
34
{
35
}
36
37
//***********************************************************
38
TMeshB3AnlProc::~TMeshB3AnlProc
()
39
{
40
}
41
42
//-----------------------------------------------------------
43
void
TMeshB3AnlProc::Analysis
(
TMeshB3OutputEvent
* poutevt)
44
{
45
if
(!
fxInput
) {
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
// do the processing here:
58
for
(Int_t i = 0; i < 4; i++) {
59
poutevt->
frData
[i] = (Float_t)
fxInput
->
fiCrate3
[i];
60
}
61
62
}
else
{
63
throw
TGo4UserException
(3,
"Error: no input event for processor %s"
, GetName());
64
}
65
}
TMeshB3AnlProc::~TMeshB3AnlProc
virtual ~TMeshB3AnlProc()
Definition:
TMeshB3AnlProc.cxx:38
TGo4UserException
Definition:
TGo4UserException.h:42
TMeshB3AnlProc.h
TGo4Log::Info
static void Info(const char *text,...) GO4_PRINTF_ARGS
Definition:
TGo4Log.cxx:294
TMeshB3OutputEvent::frData
Float_t frData[16]
Definition:
TMeshB3OutputEvent.h:31
TMeshB3AnlProc::TMeshB3AnlProc
TMeshB3AnlProc()
Definition:
TMeshB3AnlProc.cxx:32
TMeshB3InputEvent
Definition:
TMeshB3InputEvent.h:22
TGo4Log.h
TGo4EventElement
Definition:
TGo4EventElement.h:36
TMeshB3OutputEvent.h
TMeshB3AnlProc::Analysis
void Analysis(TMeshB3OutputEvent *target)
Definition:
TMeshB3AnlProc.cxx:43
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:86
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:67
Generated on Wed Jan 10 2024 15:04:17 for GSI Object Oriented Online Offline (Go4) by
1.8.13