CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
BranchIDListHelper.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_BranchIDListHelper_h
2 #define FWCore_Framework_BranchIDListHelper_h
3 
8 
9 #include <map>
10 #include <vector>
11 #include <limits>
12 
13 namespace edm {
14 
16  public:
17  typedef std::pair<BranchListIndex, ProductIndex> IndexPair;
18  typedef std::multimap<BranchID, IndexPair> BranchIDToIndexMap;
19 
21 
22  //CMS-THREADING called when a new file is opened
23  bool updateFromInput(BranchIDLists const& bidlists);
24 
25  void updateFromParent(BranchIDLists const& bidlists);
26 
28  void fixBranchListIndexes(BranchListIndexes& indexes) const;
29 
30  void updateFromRegistry(ProductRegistry const& reg);
31 
32  //CMS-THREADING this is called in SubJob::beginJob
34 
35  //Used by the EventPrincipal
36  BranchIDLists const& branchIDLists() const {return branchIDLists_;}
39  bool hasProducedProducts() const {
41  }
42 
43  private:
46  std::vector<BranchListIndex> inputIndexToJobIndex_;
49  };
50 }
51 
52 #endif
unsigned short BranchListIndex
std::pair< BranchListIndex, ProductIndex > IndexPair
std::vector< BranchIDList > BranchIDLists
Definition: BranchIDList.h:19
BranchIDToIndexMap const & branchIDToIndexMap() const
void updateFromParent(BranchIDLists const &bidlists)
uint16_t size_type
void updateFromRegistry(ProductRegistry const &reg)
BranchIDLists::size_type nAlreadyCopied_
BranchListIndex producedBranchListIndex() const
std::vector< BranchListIndex > BranchListIndexes
const T & max(const T &a, const T &b)
BranchListIndex producedBranchListIndex_
BranchIDLists const & branchIDLists() const
std::multimap< BranchID, IndexPair > BranchIDToIndexMap
BranchIDLists & mutableBranchIDLists()
bool hasProducedProducts() const
BranchIDToIndexMap branchIDToIndexMap_
bool updateFromInput(BranchIDLists const &bidlists)
void fixBranchListIndexes(BranchListIndexes &indexes) const
Called by sources to convert their read indexes into the indexes used by the job. ...
std::vector< BranchListIndex > inputIndexToJobIndex_