return _pattern->getUndergroundGeneratedGraph();
}
+void YACSEvalYFX::setParallelizeStatus(bool newVal)
+{
+ _pattern->setParallelizeStatus(newVal);
+}
+
+bool YACSEvalYFX::getParallelizeStatus() const
+{
+ return _pattern->getParallelizeStatus();
+}
+
YACSEvalYFX::YACSEvalYFX(YACS::ENGINE::Proc *scheme, bool ownScheme):_pattern(0)
{
_pattern=YACSEvalYFXPattern::FindPatternFrom(this,scheme,ownScheme);
YACSEVALYFX_EXPORT std::vector<YACSEvalSeqAny *> getResults() const;
//
YACSEVALYFX_EXPORT YACS::ENGINE::Proc *getUndergroundGeneratedGraph() const;
+ YACSEVALYFX_EXPORT void setParallelizeStatus(bool newVal);
+ YACSEVALYFX_EXPORT bool getParallelizeStatus() const;
YACSEVALYFX_EXPORT ~YACSEvalYFX();
private:
YACSEvalYFX(YACS::ENGINE::Proc *scheme, bool ownScheme);
_observer->incrRef();
}
-YACSEvalYFXPattern::YACSEvalYFXPattern(YACSEvalYFX *boss, YACS::ENGINE::Proc *scheme, bool ownScheme):_boss(boss),_scheme(scheme),_ownScheme(ownScheme),_rm(new ResourcesManager_cpp),_res(0),_observer(0)
+YACSEvalYFXPattern::YACSEvalYFXPattern(YACSEvalYFX *boss, YACS::ENGINE::Proc *scheme, bool ownScheme):_boss(boss),_scheme(scheme),_ownScheme(ownScheme),_parallelizeStatus(true),_rm(new ResourcesManager_cpp),_res(0),_observer(0)
{
}
throw YACS::Exception("YACSEvalYFXRunOnlyPattern::assignNbOfBranches : internal error 2 !");
unsigned int nbProcsDeclared(getResourcesInternal()->getNumberOfProcsDeclared());
nbProcsDeclared=std::max(nbProcsDeclared,4u);
- int nbOfBranch(nbProcsDeclared/getResourcesInternal()->getMaxLevelOfParallelism());
- nbOfBranch=std::max(nbOfBranch,1);
+ int nbOfBranch=1;
+ if(getParallelizeStatus())
+ {
+ nbOfBranch=(nbProcsDeclared/getResourcesInternal()->getMaxLevelOfParallelism());
+ nbOfBranch=std::max(nbOfBranch,1);
+ }
YACS::ENGINE::InputPort *zeInputToSet(zeMainNode->edGetNbOfBranchesPort());
YACS::ENGINE::AnyInputPort *zeInputToSetC(dynamic_cast<YACS::ENGINE::AnyInputPort *>(zeInputToSet));
if(!zeInputToSetC)
std::vector< YACSEvalInputPort *> getFreeInputPorts() const;
std::vector< YACSEvalOutputPort *> getFreeOutputPorts() const;
static YACSEvalYFXPattern *FindPatternFrom(YACSEvalYFX *boss, YACS::ENGINE::Proc *scheme, bool ownScheme);
+ void setParallelizeStatus(bool newVal) { _parallelizeStatus=newVal; }
+ bool getParallelizeStatus() const { return _parallelizeStatus; }
bool isAlreadyComputedResources() const;
void checkNonAlreadyComputedResources() const;
void checkAlreadyComputedResources() const;
private:
YACSEvalYFX *_boss;
bool _ownScheme;
+ bool _parallelizeStatus;
YACS::ENGINE::Proc *_scheme;
ResourcesManager_cpp *_rm;
YACSEvalListOfResources *_res;
bool isLocked() const;
YACS::ENGINE::Proc *getUndergroundGeneratedGraph() const;
YACSEvalListOfResources *giveResources();
+ void setParallelizeStatus(bool newVal);
+ bool getParallelizeStatus() const;
//void registerObserver(YACSEvalObserver *observer);
%extend
{