45 |
|
}; |
46 |
|
|
47 |
|
|
48 |
< |
class Integrator{ |
48 |
> |
class BaseIntegrator{ |
49 |
|
|
50 |
|
public: |
51 |
< |
Integrator(){} |
52 |
< |
virtual ~Integrator(){} |
51 |
> |
BaseIntegrator(){} |
52 |
> |
virtual ~BaseIntegrator(){} |
53 |
|
|
54 |
|
virtual void integrate( void ) = 0; |
55 |
+ |
virtual double getConservedQuantity(void) = 0; |
56 |
|
}; |
57 |
+ |
/* |
58 |
+ |
template<typename T> class AbstractTemplateIntegrator : public T |
59 |
+ |
{ |
60 |
+ |
// public: |
61 |
+ |
// AbstractTemplateIntegrator() {} |
62 |
+ |
// virtual ~AbstractTemplateIntegrator() {} |
63 |
+ |
|
64 |
+ |
// virtual void integrate(void) {} |
65 |
+ |
}; |
66 |
|
|
67 |
< |
|
67 |
> |
typedef AbstractTemplateIntegrator<BaseIntegrator> TemplateIntegrator; |
68 |
> |
*/ |
69 |
|
#endif |