CMS 3D CMS Logo

branchToClass.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: FWLite
4 // Class : BranchToClass
5 //
6 // Implementation:
7 // <Notes on implementation>
8 //
9 // Original Author: Chris Jones
10 // Created: Wed Aug 2 09:04:04 EDT 2006
11 //
12 
13 // system include files
14 class TBranch;
15 class TClass;
16 #include "TBranchBrowsable.h"
17 
18 // user include files
20 
21 namespace {
22 class BranchToClass : private TVirtualBranchBrowsable
23 {
24 
25 public:
26  static TClass* doit( const TBranch* iBranch );
27 
28 private:
30  BranchToClass();
31 };
32 
33 TClass*
34 BranchToClass::doit( const TBranch* iBranch )
35 {
36  TClass* contained = nullptr;
37  TClass* type = TVirtualBranchBrowsable::GetCollectionContainedType(iBranch,0,contained);
38  if( type == nullptr) {
39  type = contained;
40  }
41  return type;
42 }
43 
44 }
45 
46 TClass*
47 branchToClass(const TBranch* iBranch)
48 {
49  return BranchToClass::doit(iBranch);
50 }
51 //
52 // constants, enums and typedefs
53 //
54 
55 //
56 // static data member definitions
57 //
58 
59 //
60 // constructors and destructor
61 //
type
Definition: HCALResponse.h:21
TClass * branchToClass(const TBranch *iBranch)