#include #include class my_cb : public saga::callback { public: bool cb (saga::monitorable o, saga::metric m, saga::context c) { std::cout << "cb was called\n"; return true; } }; int main() { try { saga::advert::directory d ("/test_d/", saga::advert::ReadWrite | saga::advert::Create); saga::advert::entry ad = d.open ("test_1", saga::advert::Create | saga::advert::ReadWrite ); my_cb cb; ad.add_callback (saga::advert::metrics::advert_modified, cb); int i = 0; while ( i < 10 ) { std::cout << "creating advert\n"; i++; std::stringstream ss; ss << i; ad.set_attribute ("key", ss.str ()); ::getchar (); } } catch ( saga::exception const & e ) { std::cerr << "SAGA Exception: " << e.what (); return -1; } return 0; }