diff options
Diffstat (limited to 'odb/mysql/tracer.hxx')
-rw-r--r-- | odb/mysql/tracer.hxx | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/odb/mysql/tracer.hxx b/odb/mysql/tracer.hxx new file mode 100644 index 0000000..87116d5 --- /dev/null +++ b/odb/mysql/tracer.hxx @@ -0,0 +1,62 @@ +// file : odb/mysql/tracer.hxx +// author : Boris Kolpackov <boris@codesynthesis.com> +// copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC +// license : GNU GPL v2; see accompanying LICENSE file + +#ifndef ODB_MYSQL_TRACER_HXX +#define ODB_MYSQL_TRACER_HXX + +#include <odb/pre.hxx> + +#include <odb/tracer.hxx> + +#include <odb/mysql/forward.hxx> +#include <odb/mysql/details/export.hxx> + +namespace odb +{ + namespace mysql + { + class LIBODB_EXPORT tracer: private odb::tracer + { + public: + virtual + ~tracer (); + + virtual void + prepare (connection&, const statement&); + + virtual void + execute (connection&, const statement&); + + virtual void + execute (connection&, const char* statement) = 0; + + virtual void + deallocate (connection&, const statement&); + + private: + // Allow these classes to convert mysql::tracer to odb::tracer. + // + friend class database; + friend class connection; + friend class transaction; + + virtual void + prepare (odb::connection&, const odb::statement&); + + virtual void + execute (odb::connection&, const odb::statement&); + + virtual void + execute (odb::connection&, const char* statement); + + virtual void + deallocate (odb::connection&, const odb::statement&); + }; + } +} + +#include <odb/post.hxx> + +#endif // ODB_MYSQL_TRACER_HXX |