#ifndef __meowpp_h__ #define __meowpp_h__ #include "meowpp/geo/Vector2D.h" #include "meowpp/geo/Vector3D.h" #include "meowpp/Usage.h" #include "meowpp/oo/Properties.h" #include "meowpp/oo/ObjBase.h" #include "meowpp/oo/ObjSelector.h" extern int count; class TestFunction: public meow::ObjBase{ public: virtual ~TestFunction(){ }; virtual bool run() = 0; virtual std::string name () const = 0; virtual std::string description() const = 0; }; #define TEST(__A,__B) \ class Test##__A: public TestFunction{ \ public: \ \ meow::ObjBase* create() const{ return new Test##__A(); } \ bool run(); \ std::string name() const{ return #__A; } \ std::string description() const{ return __B; } \ }; \ static meow::ObjSelector<0> _(meow::stringPrintf("%d", count++), new Test##__A()); \ inline bool Test##__A::run() #endif // __meowpp_h__