Belle II Software  release-05-02-19
SectorFriendship.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Jakob Lettenbichler *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 // includes - rootStuff:
14 // includes - stl:
15 // includes - tf-related stuff
16 #include <tracking/trackFindingVXD/sectorMapTools/Sector.h>
17 
18 // includes - general fw stuff
19 #include <framework/datastore/RelationsObject.h>
20 
21 
22 namespace Belle2 {
30  class FilterBase;
31 
39  class SectorFriendship : public RelationsObject {
40  public:
42  typedef unsigned int CompatibilityValue;
44  typedef std::vector<std::vector<CompatibilityValue> > CompatibilityTable;
45 
48  m_mainSector(NULL),
49  m_friendSector(NULL) {}
50 
53 
56 
58  void applySegmentFilters();
59 
61  unsigned int checkCombinationsAlive() const;
62  protected:
63 
66 
69 
71  std::vector<FilterBase*> m_myFilters;
72 
74  std::vector<std::vector<CompatibilityValue> > m_compatibilityTable;
75 
77  };
79 } //Belle2 namespace
Belle2::SectorFriendship::checkCombinationsAlive
unsigned int checkCombinationsAlive() const
iterates through each combination of spacepoints and counts the number of combinations which are stil...
Definition: SectorFriendship.cc:43
Belle2::Sector
Sector is a central part of storing information for VXD trackFinders.
Definition: Sector.h:53
Belle2::RelationsInterface::ClassDef
ClassDef(RelationsInterface, 0)
defines interface for accessing relations of objects in StoreArray.
Belle2::SectorFriendship::m_myFilters
std::vector< FilterBase * > m_myFilters
This vector carries a pointer to all filters allowed for this sector-combination.
Definition: SectorFriendship.h:79
Belle2::SectorFriendship::m_mainSector
Sector * m_mainSector
The mainSector is stored once per run and is a link to a compatible outer sector.
Definition: SectorFriendship.h:73
Belle2::SectorFriendship::m_friendSector
Sector * m_friendSector
The friendSector is stored once per run and is a link to a compatible inner sector.
Definition: SectorFriendship.h:76
Belle2::SectorFriendship::m_compatibilityTable
std::vector< std::vector< CompatibilityValue > > m_compatibilityTable
This table carries the compatibility for each combination of hits or segments.
Definition: SectorFriendship.h:82
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::SectorFriendship::applySegmentFilters
void applySegmentFilters()
applies SegmentFilters on each spacepoint of this sector-sector-combination
Definition: SectorFriendship.cc:33
Belle2::SectorFriendship::SectorFriendship
SectorFriendship()
constructor
Definition: SectorFriendship.h:55
Belle2::SectorFriendship::CompatibilityValue
unsigned int CompatibilityValue
is currently a counter which counts number of passed filterTests
Definition: SectorFriendship.h:50
Belle2::RelationsObject
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
Definition: RelationsObject.h:443
Belle2::SectorFriendship
SectorFriendship is carrying the link between parent sector and a connected sector (socalled Friendse...
Definition: SectorFriendship.h:47
Belle2::SectorFriendship::prepareCompatibilityTable
void prepareCompatibilityTable()
creates a compatibility-table so that the filters can use it
Definition: SectorFriendship.cc:19
Belle2::SectorFriendship::getFriend
Sector * getFriend()
returns friend sector
Definition: SectorFriendship.h:60
Belle2::SectorFriendship::CompatibilityTable
std::vector< std::vector< CompatibilityValue > > CompatibilityTable
is currently a table of CompatibilityValues which allows to check which combination of spacepoints/se...
Definition: SectorFriendship.h:52