Salome HOME
copy tag mergefrom_BR_V0_1_CC_Salome_04oct07
[modules/yacs.git] / src / engine / StaticDefinedComposedNode.hxx
1 #ifndef __STATICDEFINEDCOMPOSEDNODE_HXX__
2 #define __STATICDEFINEDCOMPOSEDNODE_HXX__
3
4 #include "ComposedNode.hxx"
5
6 namespace YACS
7 {
8   namespace ENGINE
9   {
10     /*!
11      * Abstract class, that factorizes all the treatments relative to resource management for ComposedNode that have
12      * their connectivity fully defined before launching ; which is not always the case for classes inheriting from DynParaLoop.
13      */
14     class StaticDefinedComposedNode : public ComposedNode
15     {
16     protected:
17       StaticDefinedComposedNode(const std::string& name);
18       StaticDefinedComposedNode(const StaticDefinedComposedNode& other, ComposedNode *father);
19     public:
20       bool isPlacementPredictableB4Run() const;
21       bool isMultiplicitySpecified(unsigned& value) const;
22       void forceMultiplicity(unsigned value);
23     };
24   }
25 }
26
27 #endif