35 #ifndef THE_TRANSACTION_HXX_
36 #define THE_TRANSACTION_HXX_
43 #include <Core/ITKCommon/ThreadUtils/the_mutex_interface.hxx>
73 inline state_t state()
const
76 inline void set_state(
const state_t & s)
79 inline bool done()
const
80 {
return state_ == DONE_E; }
87 inline notify_cb_t notify_cb()
const
88 {
return notify_cb_; }
90 inline void set_notify_cb(notify_cb_t cb,
void * cb_data)
93 notify_cb_data_ = cb_data;
104 typedef void(*status_cb_t)(
void *, the_transaction_t *,
const char * status);
106 inline status_cb_t status_cb()
const
107 {
return status_cb_; }
109 inline void set_status_cb(status_cb_t cb,
void * cb_data)
112 status_cb_data_ = cb_data;
118 const char * message = NULL);
122 const char * message);
137 bool callback_request();
143 virtual void callback();
164 notify_cb_t notify_cb_;
165 void * notify_cb_data_;
167 status_cb_t status_cb_;
168 void * status_cb_data_;
174 extern std::ostream &
175 operator << (std::ostream & so,
const the_transaction_t::state_t & state);
187 the_transaction_t::state_t s) = 0;
188 virtual void blab(
const char * message)
const = 0;
192 #endif // THE_TRANSACTION_HXX_
Definition: the_transaction.hxx:55
Definition: the_transaction.hxx:181
Definition: the_mutex_interface.hxx:42
Definition: the_thread_interface.hxx:57