/tags/rel-1-3-25/SWIG/Examples/ruby/import_template/bar.h

# · C++ Header · 22 lines · 18 code · 4 blank · 0 comment · 0 complexity · 78f5e8bc28edaa448ec8c543df212db2 MD5 · raw file

  1. #include "base.h"
  2. template<class T> class Bar : public Base<T> {
  3. public:
  4. Bar() { }
  5. ~Bar() { }
  6. virtual const char * A() const {
  7. return "Bar::A";
  8. }
  9. const char * B() const {
  10. return "Bar::B";
  11. }
  12. virtual Base<T> *toBase() {
  13. return static_cast<Base<T> *>(this);
  14. }
  15. static Bar<T> *fromBase(Base<T> *b) {
  16. return dynamic_cast<Bar<T> *>(b);
  17. }
  18. };