AEvil_decl.hpp

Go to the documentation of this file.
00001 #ifndef A_EVIL_DECL_HPP
00002 #define A_EVIL_DECL_HPP
00003 
00004 // Only include the declaration, not any implementations in case of cicular
00005 // dependencies!
00006 #include "EvilBase_decl.hpp"
00007 
00008 
00009 namespace EvilPack {
00010 
00011 
00012 // Need a forward for B to declare function callBEvil(...)
00013 template<class T> class BEvil;
00014 
00015 
00018 template<class T>
00019 class AEvil : public EvilBase<T> {
00020 public:
00022   void callBEvil(const BEvil<T> &bEvil, const T& obj) const;
00024   void soundOff(const T& obj) const;
00025 };
00026 
00027 
00032 template<class T>
00033 inline
00034 RCP<AEvil<T> > aEvil()
00035 {
00036   return Teuchos::rcp(new AEvil<T>);
00037 }
00038 
00039 
00040 } // namespace EvilPack
00041 
00042 
00043 #endif // A_EVIL_DECL_HPP
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Wed Apr 13 09:57:27 2011 for Teuchos Package Browser (Single Doxygen Collection) by  doxygen 1.6.3