configObjects/Setup.h

00001 #ifndef _SETUP_H_
00002 #define _SETUP_H_
00003 
00004 #include <iostream>
00005 #include <sstream>
00006 #include <string>
00007 #include <set>
00008 
00009 #include "../db/DBConnection.h"
00010 #include "State.h"
00011 
00012 using namespace std;
00013 
00017 class Setup{
00018 
00019  private :
00020   string name;
00021   bool locked;
00022   vector<State*> states;
00023 
00024   bool isValid();
00025   bool setupExist();
00026 
00027  public:
00031   Setup(string n);
00032   ~Setup();
00033   Setup(Setup& s);
00034 
00038   void addState(State* s);
00043   vector<State*> getStates();
00044 
00049   string getName();
00050 
00054   void lock();
00059   bool isLocked();
00060   
00066   static Setup* getSetup(string n) throw (ILCException::Exception);
00067 
00072   static vector<string> getSetupNames() throw (ILCException::Exception);
00073 
00078   static vector<string> getUnusedSetupNames() throw (ILCException::Exception);
00079 
00084   static void deleteSetup(string n) throw (ILCException::Exception);
00085   
00089   void upload() throw (ILCException::Exception);
00090 
00095   void recursiveUpload();
00096 
00102   static void registerRun(int runNum, string setupN) throw (ILCException::Exception);
00103 
00109   static Setup* getSetupFromRun(int runN) throw (ILCException::Exception);
00110 
00111 };
00112 #endif

Generated on Tue Feb 28 15:35:34 2012 for ILCConfigurationDB by  doxygen 1.4.7