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

DemoSnarlList.h

Go to the documentation of this file.
00001 
00002 // $Id: DemoSnarlList.h,v 1.3 2009/07/21 22:10:17 gmieg Exp $
00003 //
00004 // Given a list of run/snarl numbers, this module passes only those
00005 // records whose run/snarl number is in the list
00006 //
00007 // messier@huhepl.harvard.edu
00009 #ifndef STRING
00010 #include <string>
00011 #endif
00012 #ifndef LIST
00013 #include <list>
00014 #endif
00015 #ifndef JOBCMODULE_H
00016 #include "JobControl/JobCModule.h"
00017 #endif
00018 class MomNavigator;
00019 class JobCommand;
00020 
00021 class DemoSnarlList : public JobCModule
00022 {
00023 public:
00024   DemoSnarlList();
00025 
00026   JobCResult Ana(const MomNavigator* mom);
00027   void       Report();
00028   void       HandleCommand(JobCommand *command);
00029 
00030   void AddRunSnarl(int r, int s);
00031   void RemoveRunSnarl(int r, int s);
00032   void AddUsingFile(const char* f);
00033   void RemoveUsingFile(const char* f);
00034 
00035 private:
00036   std::string Key(int r, int s);
00037 
00038 private:
00039   bool                     fIsSorted;          // Is the list sorted?
00040   std::list< std::string > fSnarlList; // The list of records to pass
00041   bool fVetoMode;         // If true, veto the list instead of accept
00042 };
00043 
00045 

Generated on Mon Feb 15 11:06:37 2010 for loon by  doxygen 1.3.9.1