// $Id$
//
-// Copyright (C) 2007
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
+// Copyright (C) 2007
+// Fraunhofer Institute for Open Communication Systems (FOKUS)
+// Competence Center NETwork research (NET), St. Augustin, GERMANY
// Stefan Bund <g0dil@berlios.de>
//
// This program is free software; you can redistribute it and/or modify
#include "Events.ih"
// Custom includes
+#include "../Utils/senfassert.hh"
#include "detail/EventBinding.hh"
#define prefix_ inline
template <class EventType, class Self>
prefix_ void
senf::ppi::EventImplementationHelper<EventType,Self>::callback(EventArg event,
- boost::posix_time::ptime time)
+ ClockService::clock_type time)
{
binding().callback(event,time);
}
prefix_ senf::ppi::detail::EventBinding<EventType> &
senf::ppi::EventImplementationHelper<EventType,Self>::binding()
{
- BOOST_ASSERT( static_cast<Self*>(this)->binding_ );
+ SENF_ASSERT( static_cast<Self*>(this)->binding_ &&
+ "senf::ppi::EventImplementationHelper::binding(): Missing registerEvent()" );
return * static_cast<Self*>(this)->binding_;
}
template <class Self>
prefix_ void
-senf::ppi::EventImplementationHelper<void,Self>::callback(boost::posix_time::ptime time)
+senf::ppi::EventImplementationHelper<void,Self>::callback(ClockService::clock_type time)
{
binding().callback(time);
}
prefix_ senf::ppi::detail::EventBinding<void> &
senf::ppi::EventImplementationHelper<void,Self>::binding()
{
- BOOST_ASSERT( static_cast<Self*>(this)->binding_ );
+ SENF_ASSERT( static_cast<Self*>(this)->binding_ &&
+ "senf::ppi::EventImplementationHelper::binding(): Missing registerEvent()" );
return * static_cast<Self*>(this)->binding_;
}
///////////////////////////////////////////////////////////////////////////
// senf::ppi::EventImplementation<EventType>
+template <class EventType>
+prefix_ senf::ppi::module::Module & senf::ppi::EventImplementation<EventType>::module()
+ const
+{
+ return binding_->module();
+}
+
+template <class EventType>
+prefix_ senf::ppi::EventManager & senf::ppi::EventImplementation<EventType>::manager()
+ const
+{
+ return binding_->manager();
+}
+
////////////////////////////////////////
// protected members