X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=PPI%2FEvents.cti;h=b1bd1fcff66ea010581c9233aab1cfd96a4a048c;hb=28275a1a9075ae42dc29aaadc5bc78e6fa204e26;hp=a7db87cbd02c41cb8d16fb2e53b1f46f5ba3e57d;hpb=81ffa1c459b96dd44472bcef37e1e373934ee138;p=senf.git diff --git a/PPI/Events.cti b/PPI/Events.cti index a7db87c..b1bd1fc 100644 --- a/PPI/Events.cti +++ b/PPI/Events.cti @@ -32,32 +32,92 @@ ///////////////////////////////cti.p/////////////////////////////////////// /////////////////////////////////////////////////////////////////////////// -// senf::ppi::EventImplementation +// senf::ppi::EventImplementationHelper //////////////////////////////////////// // protected members -template -prefix_ senf::ppi::EventImplementation::EventImplementation() - : binding_(0) -{} +template +prefix_ void +senf::ppi::EventImplementationHelper::callback(EventArg event, + ClockService::clock_type time) +{ + binding().callback(event,time); +} + +template +prefix_ void senf::ppi::EventImplementationHelper::callback(EventArg event) +{ + binding().callback(event); +} + +//////////////////////////////////////// +// private members + +template +prefix_ senf::ppi::detail::EventBinding & +senf::ppi::EventImplementationHelper::binding() +{ + BOOST_ASSERT( static_cast(this)->binding_ ); + return * static_cast(this)->binding_; +} + +/////////////////////////////////////////////////////////////////////////// +// senf::ppi::EventImplementationHelper + +//////////////////////////////////////// +// protected members + +template +prefix_ void +senf::ppi::EventImplementationHelper::callback(ClockService::clock_type time) +{ + binding().callback(time); +} + +template +prefix_ void senf::ppi::EventImplementationHelper::callback() +{ + binding().callback(); +} + +//////////////////////////////////////// +// private members + +template +prefix_ senf::ppi::detail::EventBinding & +senf::ppi::EventImplementationHelper::binding() +{ + BOOST_ASSERT( static_cast(this)->binding_ ); + return * static_cast(this)->binding_; +} + +/////////////////////////////////////////////////////////////////////////// +// senf::ppi::EventImplementation template -prefix_ void senf::ppi::EventImplementation::callback(EventArg event, - boost::posix_time::ptime time) +prefix_ senf::ppi::module::Module & senf::ppi::EventImplementation::module() + const { - BOOST_ASSERT(binding_); - binding_->callback(event,time); + return binding_->module(); } template -prefix_ void senf::ppi::EventImplementation::callback(EventArg event) +prefix_ senf::ppi::EventManager & senf::ppi::EventImplementation::manager() + const { - BOOST_ASSERT(binding_); - binding_->callback(event); + return binding_->manager(); } //////////////////////////////////////// +// protected members + +template +prefix_ senf::ppi::EventImplementation::EventImplementation() + : binding_(0) +{} + +//////////////////////////////////////// // private members template