00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include <string>
00020
00021
00022
00023
00024 namespace pqxx
00025 {
00026
00028
00046 class PQXX_LIBEXPORT trigger : public PGSTD::unary_function<int, void>
00047 {
00048
00049 public:
00051
00055 trigger(connection_base &C, const PGSTD::string &N) :
00056 m_Conn(C), m_Name(N) { m_Conn.AddTrigger(this); }
00057
00058 virtual ~trigger() { m_Conn.RemoveTrigger(this); }
00059
00060 PGSTD::string name() const { return m_Name; }
00061
00063
00068 virtual void operator()(int be_pid) =0;
00069
00070
00071 #ifdef PQXX_DEPRECATED_HEADERS
00072
00073 PGSTD::string Name() const { return name(); }
00074 #endif
00075
00076 protected:
00077 connection_base &Conn() const throw () { return m_Conn; }
00078
00079 private:
00080 connection_base &m_Conn;
00081 PGSTD::string m_Name;
00082 };
00083
00084 }
00085
00086