Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

SeqTable.cxx

Go to the documentation of this file.
00001 
00002 #include "JobControl/SeqTable.h"
00003 #include <iostream>
00004 using namespace jobc;
00005 
00006 SeqTable* SeqTable::fInstance = 0;
00007 
00008 //......................................................................
00009 
00010 SeqTable::SeqTable() { }
00011 
00012 //......................................................................
00013 
00014 SeqTable& SeqTable::Instance() 
00015 {
00016   if (fInstance == 0) fInstance = new SeqTable();
00017   return *fInstance;
00018 }
00019 
00020 //......................................................................
00021   
00022 void SeqTable::Insert(const Sequence& seq) 
00023 {
00024   if (this->Find(seq.Name())==0) {
00025     fSeqTable[std::string(seq.Name())] = seq;
00026     return;
00027   }
00028   std::cerr << "JobCSeqTable: "
00029             << __LINE__ << " Sequence '" << seq.Name()
00030             << "' already defined." << std::endl;
00031   abort();
00032 }
00033 
00034 //......................................................................
00035 
00036 Sequence* SeqTable::Find(const char* name) 
00037 {
00038   SeqTable_t::iterator itr = fSeqTable.find(std::string(name));
00039   if (itr == fSeqTable.end()) return 0;
00040   return &(itr->second);
00041 }
00042 

Generated on Sat Oct 11 02:35:28 2008 for NOvA Offline by  doxygen 1.3.9.1