1 //=============================================================================
2 // File : SMESH_HypothesisFactory.hxx
3 // Created : mer mai 15 13:45:47 CEST 2002
4 // Author : Paul RASCLE, EDF
6 // Copyright : EDF 2002
8 //=============================================================================
10 #ifndef _SMESH_HYPOTHESISFACTORY_HXX_
11 #define _SMESH_HYPOTHESISFACTORY_HXX_
13 #include "SMESH_Hypothesis.hxx"
15 #include "Utils_SALOME_Exception.hxx"
21 class GenericHypothesisCreator
24 // virtual SMESH_Hypothesis* GetInstance(int hypId) = 0;
25 virtual SMESH_Hypothesis* Create(int hypId, int studyId, SMESH_Gen* gen) = 0;
28 class SMESH_HypothesisFactory
31 SMESH_HypothesisFactory();
32 virtual ~SMESH_HypothesisFactory();
34 void SetGen(SMESH_Gen* gen);
36 SMESH_Hypothesis* Create(const char* anHypName, int studyId)
37 throw (SALOME_Exception);
39 GenericHypothesisCreator* GetCreator(const char* anHypName)
40 throw (SALOME_Exception);
45 map<string, GenericHypothesisCreator*> _creatorMap;