bool YACSEvalListOfResources::isInteractive() const
{
- const MapOfParserResourcesType& zeList(_rm->GetList());
std::vector<std::string> allMachines(getAllChosenMachines());
if(allMachines.empty())
return true;
std::vector<bool> status(sz);
for(std::vector<std::string>::const_iterator it=allMachines.begin();it!=allMachines.end();it++,ii++)
{
- std::map<std::string, ParserResourcesType>::const_iterator it2(zeList.find(*it));
- if(it2==zeList.end())
- {
- std::ostringstream oss; oss << "YACSEvalListOfResources::isInteractive : presence of non existing \"" << *it << "\" !";
- throw YACS::Exception(oss.str());
- }
- const ParserResourcesType& elt((*it2).second);
- status[ii]=(elt.Batch==none);
+ status[ii]=isMachineInteractive(*it);
}
std::size_t trueRet(std::count(status.begin(),status.end(),true)),falseRet(std::count(status.begin(),status.end(),false));
if(trueRet==sz && falseRet==0)
delete *it;
}
+bool YACSEvalListOfResources::isMachineInteractive(const std::string& machine) const
+{
+ const MapOfParserResourcesType& zeList(_rm->GetList());
+ std::map<std::string, ParserResourcesType>::const_iterator it2(zeList.find(machine));
+ if(it2==zeList.end())
+ {
+ std::ostringstream oss; oss << "YACSEvalListOfResources::isMachineInteractive : no such machine with name \"" << machine << "\" !";
+ throw YACS::Exception(oss.str());
+ }
+ const ParserResourcesType& elt((*it2).second);
+ return (elt.Batch==none);
+}
+
class EffectiveComparator
{
public:
YACSEVALYFX_EXPORT const YACSEvalParamsForCluster& getAddParamsForCluster() const { return _paramsInCaseOfCluster; }
void apply();
YACSEVALYFX_EXPORT ~YACSEvalListOfResources();
+public:// info only
+ YACSEVALYFX_EXPORT bool isMachineInteractive(const std::string& machine) const;
public:
ResourcesManager_cpp *getCatalogEntry() const { return _rm; }
YACS::ENGINE::DeploymentTree *getDeploymentTree() const { return _dt; }
void setWantedMachine(const std::string& machine);
std::size_t size() const;
bool isInteractive() const;
+ bool isMachineInteractive(const std::string& machine) const;
YACSEvalResource *at(std::size_t i) const;
unsigned int getNumberOfProcsDeclared() const;
void checkOKForRun() const;