]> SALOME platform Git repositories - modules/yacs.git/blob - src/ydfx_gui/YDFXResourceModel.hxx
Salome HOME
Add a generic widget for choosing resource parameters.
[modules/yacs.git] / src / ydfx_gui / YDFXResourceModel.hxx
1 #ifndef YDFXRESOURCEMODEL_H
2 #define YDFXRESOURCEMODEL_H
3
4 #include "AbstractResourceModel.hxx"
5
6 class YACSEvalYFX;
7 class YACSEvalListOfResources;
8 class YACSEvalParamsForCluster;
9
10 class YDFXWIDGETS_EXPORT YDFXResourceModel : public AbstractResourceModel
11 {
12 public:
13     
14   YDFXResourceModel(YACSEvalYFX* eval);
15   virtual ~YDFXResourceModel();
16
17   virtual bool getParallelizeStatus()const;
18   virtual void setParallelizeStatus(bool v);
19
20   virtual std::string getRemoteDir()const;
21   virtual std::string getDefaultRemoteDir(std::string machine)const;
22   virtual void setRemoteDir(const std::string& v);
23
24   virtual std::string getLocalDir()const;
25   virtual void setLocalDir(const std::string& v);
26
27   virtual std::string getWckey()const;
28   virtual void setWckey(const std::string& v);
29
30   virtual int getMaxDurationMinutes()const;
31   virtual void setMaxDurationMinutes(int v);
32
33   virtual int getMaxDurationHours()const;
34   virtual void setMaxDurationHours(int v);
35
36   virtual unsigned int getNbprocs()const;
37   virtual void setNbprocs(unsigned int v);
38
39   virtual std::string getWantedMachine()const;
40   virtual void setWantedMachine(const std::string& v);
41   virtual std::vector<std::string> getFittingMachines()const;
42
43   virtual const std::list<std::string>& getInFiles()const;
44   virtual std::list<std::string>& getInFiles();
45
46   virtual bool isMachineInteractive(const std::string& machine)const;
47
48   void reset(YACSEvalYFX* eval);
49
50 private:
51
52   YACSEvalListOfResources * resources();
53   const YACSEvalListOfResources * resources()const;
54   YACSEvalParamsForCluster& getClusterParams();
55   const YACSEvalParamsForCluster& getClusterParams()const;
56   void getMaxDuration(int& hours, int& minutes)const;
57   void setMaxDuration(int hours, int minutes);
58
59 private:
60   YACSEvalYFX* _eval;
61 };
62
63 #endif // YDFXRESOURCEMODEL_H