37 for(std::size_t
i=oldSize;
i<sz;
i++)
49 for(std::vector<const Task *>::const_iterator it=nodes.begin();it!=nodes.end();it++)
54 throw Exception(
"Searching to allocate for a ServiceNode instance already declared as allocated !");
57 throw Exception(
"All ressources are already occupied ! You are expected to wait for released resources !");
67 std::size_t workerId(it.second);
69 throw Exception(
"SalomeHPContainerVectOfHelper::allocateForCrude : Internal error ! WorkerId is greater or equal to size of HPCont !");
71 throw Exception(
"SalomeHPContainerVectOfHelper::allocateForCrude : Mismatch between Playground info and HPContainer info !");
75 const Task *task(it.first);
76 std::size_t workerId(it.second);
85 return std::numeric_limits<std::size_t>::max();
88 throw Exception(
"Request to release a resource not declared as working !");
96 std::map< const Task *,std::size_t >::const_iterator it(
_currentlyWorking.find(node));
98 throw Exception(
"current Node to be located is not marked as launched !");
99 std::size_t ret((*it).second);
128 std::vector<std::string> ret;
133 for(std::size_t
i=0;
i<sz;
i++)
145 throw Exception(
"Something wrong a node is still declared to be using the ressource !");
147 if((*it)->isAlreadyStarted(0))
148 throw Exception(
"Some of the containers have be started ! Please shutdown them before !");
154 throw Exception(
"The task has been found, but its id is not in the correct range ! resize of of container size during run ?");
std::vector< bool > _whichOccupied
void allocateFor(const std::vector< const Task * > &nodes)
void resize(std::size_t sz)
std::size_t locateTask(const Task *node) const
void allocateForCrude(const std::vector< std::pair< const Task *, std::size_t >> &nodes)
const SalomeContainerMonoHelper * getHelperOfTaskThreadSafe(const SalomeHPContainer *cont, const Task *node) const
std::vector< std::string > getKernelContainerNames(const SalomeHPContainer *cont) const
void checkNoCurrentWork() const
std::size_t getNumberOfFreePlace() const
std::size_t release(const Task *node)
const SalomeContainerMonoHelper * getHelperOfTask(const Task *node) const
std::vector< BASES::AutoRefCnt< YACS::ENGINE::SalomeContainerMonoHelper > > _launchModeType
std::map< const Task *, std::size_t > _currentlyWorking
void checkPosInVec(std::size_t pos) const
def distance(node, new_node)