SND@LHC Software
Loading...
Searching...
No Matches
ThinScatterer.cc
Go to the documentation of this file.
1/* Copyright 2008-2009, Technische Universitaet Muenchen,
2 Authors: Christian Hoeppner & Sebastian Neubert & Johannes Rauch
3
4 This file is part of GENFIT.
5
6 GENFIT is free software: you can redistribute it and/or modify
7 it under the terms of the GNU Lesser General Public License as published
8 by the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
10
11 GENFIT is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU Lesser General Public License for more details.
15
16 You should have received a copy of the GNU Lesser General Public License
17 along with GENFIT. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#include "ThinScatterer.h"
21
22#include <iostream>
23#include <TBuffer.h>
24
25
26namespace genfit {
27
28
29void ThinScatterer::Print(const Option_t*) const {
30 std::cout << "ThinScatterer, defined in plane: ";
31 sharedPlane_->Print();
32 std::cout << "Material properties: ";
34}
35
36
37void ThinScatterer::Streamer(TBuffer &R__b)
38{
39 // Stream an object of class genfit::ThinScatterer.
40
41 // TODO: test
42
43 //This works around a msvc bug and should be harmless on other platforms
44 typedef ::genfit::ThinScatterer thisClass;
45 UInt_t R__s, R__c;
46 if (R__b.IsReading()) {
47 Version_t R__v = R__b.ReadVersion(&R__s, &R__c); if (R__v) { }
48 //TObject::Streamer(R__b);
49 sharedPlane_.reset(new DetPlane());
50 sharedPlane_->Streamer(R__b);
51 material_.Streamer(R__b);
52 R__b.CheckByteCount(R__s, R__c, thisClass::IsA());
53 } else {
54 R__c = R__b.WriteVersion(thisClass::IsA(), kTRUE);
55 //TObject::Streamer(R__b);
56 sharedPlane_->Streamer(R__b);
57 material_.Streamer(R__b);
58 R__b.SetByteCount(R__c, kTRUE);
59 }
60}
61
62
63
64} /* End of namespace genfit */
void Print(const Option_t *="") const
Thin or thick scatterer.
MaterialProperties material_
Material boundary. '!' shuts up ROOT.
SharedPlanePtr sharedPlane_
void Print(const Option_t *="") const
Matrix inversion tools.
Definition AbsBField.h:29