import source from 1.3.40
[external/swig.git] / Examples / python / import_template / foo.h
1 #include "base.h"
2
3 template<class T> class Foo : public Base<T> {
4  public:
5   Foo() { }
6   ~Foo() { }
7   virtual void A() { 
8     printf("I'm Foo::A\n");
9   }
10   void B() {
11     printf("I'm Foo::B\n");
12   }
13   virtual Base<T> *toBase() {
14     return static_cast<Base<T> *>(this);
15   }
16   static Foo<T> *fromBase(Base<T> *b) {
17     return dynamic_cast<Foo<T> *>(b);
18   }
19 };
20
21