X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FLauncher%2FLauncher_Job.hxx;h=2f2322bf828eef095b4ad37182e6668c7ffd311d;hb=a7e425483b5eb6a0491cbad5ef63cc67ccf64f7c;hp=5b45c8543e80fb1736b55bf7e9132da47fc9b178;hpb=9749fc1db72bd80e278405114b05ffc69b5031da;p=modules%2Fkernel.git diff --git a/src/Launcher/Launcher_Job.hxx b/src/Launcher/Launcher_Job.hxx index 5b45c8543..2f2322bf8 100644 --- a/src/Launcher/Launcher_Job.hxx +++ b/src/Launcher/Launcher_Job.hxx @@ -1,9 +1,9 @@ -// Copyright (C) 2009-2013 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2009-2016 CEA/DEN, EDF R&D, OPEN CASCADE // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -43,8 +43,6 @@ #include #endif -#include - namespace Launcher { class LAUNCHER_EXPORT Job @@ -56,13 +54,15 @@ namespace Launcher // Launcher managing parameters // State of a Job: CREATED, IN_PROCESS, QUEUED, RUNNING, PAUSED, FINISHED, ERROR void setState(const std::string & state); - std::string getState(); + std::string getState() const; + // Get names or ids of hosts assigned to the job + std::string getAssignedHostnames(); void setNumber(const int & number); int getNumber(); virtual void setResourceDefinition(const ParserResourcesType & resource_definition); - ParserResourcesType getResourceDefinition(); + ParserResourcesType getResourceDefinition() const; // Common parameters void setJobName(const std::string & job_name); @@ -76,25 +76,44 @@ namespace Launcher void setResourceRequiredParams(const resourceParams & resource_required_params); void setQueue(const std::string & queue); void setEnvFile(const std::string & env_file); - - std::string getJobName(); - std::string getJobFile(); - std::string getWorkDirectory(); - std::string getLocalDirectory(); - std::string getResultDirectory(); - const std::list & get_in_files(); - const std::list & get_out_files(); - std::string getMaximumDuration(); - resourceParams getResourceRequiredParams(); - std::string getQueue(); - std::string getEnvFile(); - std::string getJobType(); + void setExclusive(bool exclusive); + void setExclusiveStr(const std::string & exclusiveStr); + void setMemPerCpu(unsigned long mem_per_cpu); + void setWCKey(const std::string & wckey); + void setExtraParams(const std::string & extra_params); + void setReference(const std::string & reference); + // For COORM + void setLauncherFile(const std::string & launcher_file); + void setLauncherArgs(const std::string & launcher_args); + + std::string getJobName() const; + std::string getJobFile() const; + std::string getWorkDirectory() const; + std::string getLocalDirectory() const; + std::string getResultDirectory() const; + const std::list & get_in_files() const; + const std::list & get_out_files() const; + std::string getMaximumDuration() const; + resourceParams getResourceRequiredParams() const; + std::string getQueue() const; + std::string getEnvFile() const; + std::string getJobType() const; + bool getExclusive() const; + std::string getExclusiveStr() const; + unsigned long getMemPerCpu() const; + std::string getWCKey() const; + std::string getExtraParams() const; + std::string getReference() const; + + // For COORM + std::string getLauncherFile() const; + std::string getLauncherArgs() const; std::string updateJobState(); void addSpecificParameter(const std::string & name, const std::string & value); - const std::map & getSpecificParameters(); + const std::map & getSpecificParameters() const; virtual void checkSpecificParameters(); // Checks @@ -103,10 +122,7 @@ namespace Launcher // Helps long convertMaximumDuration(const std::string & maximum_duration); - std::string getLaunchDate(); - - // Xml method - void addToXmlDocument(xmlNodePtr root_node); + std::string getLaunchDate() const; void stopJob(); void removeJob(); @@ -120,6 +136,7 @@ namespace Launcher std::string _job_type; std::string _state; + std::string _assigned_hostnames; // Assigned hostnames std::string _launch_date; std::string _env_file; @@ -140,6 +157,15 @@ namespace Launcher long _maximum_duration_in_second; resourceParams _resource_required_params; std::string _queue; + bool _exclusive; + unsigned long _mem_per_cpu; + std::string _wckey; + std::string _extra_params; + std::string _reference; //! Reference of the job for the batch manager + + // Parameters for COORM + std::string _launcher_file; + std::string _launcher_args; #ifdef WITH_LIBBATCH // Connection with LIBBATCH @@ -147,7 +173,7 @@ namespace Launcher Batch::Job * getBatchJob(); Batch::Parametre common_job_params(); void setBatchManagerJobId(Batch::JobId batch_manager_job_id); - Batch::JobId getBatchManagerJobId(); + Batch::JobId getBatchManagerJobId() const; protected: Batch::Job * _batch_job; @@ -157,4 +183,3 @@ namespace Launcher } #endif -