CMS 3D CMS Logo

ProcessBase.h
Go to the documentation of this file.
1 #ifndef L1Trigger_TrackFindingTracklet_interface_ProcessBase_h
2 #define L1Trigger_TrackFindingTracklet_interface_ProcessBase_h
3 
4 #include <string>
5 
6 namespace trklet {
7 
8  class MemoryBase;
9  class Settings;
10  class Globals;
11 
12  class ProcessBase {
13  public:
14  ProcessBase(std::string name, Settings const& settings, Globals* global);
15 
16  virtual ~ProcessBase() = default;
17 
18  // Add wire from pin "output" or "input" this proc module to memory instance "memory".
19  virtual void addOutput(MemoryBase* memory, std::string output) = 0;
20  virtual void addInput(MemoryBase* memory, std::string input) = 0;
21 
22  std::string const& getName() const { return name_; }
23 
24  unsigned int nbits(unsigned int power);
25 
26  //method sets the layer and disk based on the name. pos is the position in the memory name where the layer or disk is specified
27  void initLayerDisk(unsigned int pos, int& layer, int& disk);
28  void initLayerDisk(unsigned int pos, int& layer, int& disk, int& layerdisk);
29 
30  unsigned int initLayerDisk(unsigned int pos);
31 
32  //This function processes the name of a TE module to determine the layerdisks and iseed
33  void initLayerDisksandISeed(unsigned int& layerdisk1, unsigned int& layerdisk2, unsigned int& iSeed);
34 
35  unsigned int getISeed(const std::string& name);
36 
37  protected:
39 
42  };
43 }; // namespace trklet
44 #endif
trklet::ProcessBase::ProcessBase
ProcessBase(std::string name, Settings const &settings, Globals *global)
Definition: ProcessBase.cc:14
trklet::ProcessBase::addOutput
virtual void addOutput(MemoryBase *memory, std::string output)=0
input
static const std::string input
Definition: EdmProvDump.cc:48
convertSQLitetoXML_cfg.output
output
Definition: convertSQLitetoXML_cfg.py:72
memory
Definition: HGCRecHitSoA.h:20
pos
Definition: PixelAliasList.h:18
trklet::Settings
Definition: Settings.h:52
trklet::ProcessBase::nbits
unsigned int nbits(unsigned int power)
Definition: ProcessBase.cc:17
trklet::ProcessBase::settings_
Settings const & settings_
Definition: ProcessBase.h:40
trklet::Globals
Definition: Globals.h:30
trklet::ProcessBase::addInput
virtual void addInput(MemoryBase *memory, std::string input)=0
trklet::ProcessBase::initLayerDisksandISeed
void initLayerDisksandISeed(unsigned int &layerdisk1, unsigned int &layerdisk2, unsigned int &iSeed)
Definition: ProcessBase.cc:63
phase1PixelTopology::layer
constexpr std::array< uint8_t, layerIndexSize > layer
Definition: phase1PixelTopology.h:99
trklet::ProcessBase::initLayerDisk
void initLayerDisk(unsigned int pos, int &layer, int &disk)
Definition: ProcessBase.cc:33
trklet::MemoryBase
Definition: MemoryBase.h:13
trklet
Definition: AllInnerStubsMemory.h:10
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
trklet::ProcessBase::getISeed
unsigned int getISeed(const std::string &name)
Definition: ProcessBase.cc:119
trklet::ProcessBase
Definition: ProcessBase.h:12
trklet::ProcessBase::getName
std::string const & getName() const
Definition: ProcessBase.h:22
trklet::ProcessBase::~ProcessBase
virtual ~ProcessBase()=default
trklet::ProcessBase::name_
std::string name_
Definition: ProcessBase.h:38
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
trklet::ProcessBase::globals_
Globals * globals_
Definition: ProcessBase.h:41