#define __LIBT2N_CLIENT
#include <string>
+#include <vector>
+#include <list>
+
+#include <boost/function.hpp>
#include "connection.hxx"
#include "types.hxx"
log_level_values log_level;
std::ostream *logstream;
+ /// vector initialized for all callback-types, all elements in each list will be called
+ std::vector<std::list<boost::function<void ()> > > callbacks;
+
+ protected:
+ void do_callbacks(callback_event_type event);
+
public:
client_connection();
+ virtual ~client_connection();
+
+ void close();
+
void set_logging(std::ostream *_logstream, log_level_values _log_level);
std::ostream* get_logstream(log_level_values level);
+
+ void add_callback(callback_event_type event, const boost::function<void ()>& func);
};
}