// $Id$
//
// Copyright (C) 2007
-// Fraunhofer Institute for Open Communication Systems (FOKUS)
-// Competence Center NETwork research (NET), St. Augustin, GERMANY
+// 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 "ppitest.mpp"
#define prefix_
-///////////////////////////////cc.p////////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
namespace module = senf::ppi::module;
namespace connector = senf::ppi::connector;
namespace ppi = senf::ppi;
-// ////////////////////////////////////////////////////////////////////////
+//-////////////////////////////////////////////////////////////////////////
// RateFilter
class RateFilter
SENF_PPI_MODULE(RateFilter);
public:
- connector::ActiveInput input;
- connector::ActiveOutput output;
+ connector::ActiveInput<> input;
+ connector::ActiveOutput<> output;
RateFilter(senf::ClockService::clock_type interval);
};
RateFilter::RateFilter(senf::ClockService::clock_type interval)
- : timer(interval)
+ : timer(interval)
{
route(input,timer);
route(timer,output);
output(input());
}
-// ////////////////////////////////////////////////////////////////////////
+//-////////////////////////////////////////////////////////////////////////
class RateStuffer
{
RateFilter rateFilter;
public:
- connector::PassiveInput & input;
- connector::ActiveOutput & output;
+ connector::PassiveInput<> & input;
+ connector::ActiveOutput<> & output;
- RateStuffer(senf::ClockService::clock_type interval,
+ RateStuffer(senf::ClockService::clock_type interval,
senf::Packet packet,
unsigned high = 1,
unsigned low = 0)
queue.qdisc(ppi::ThresholdQueueing(high,low));
}
};
-
-// ////////////////////////////////////////////////////////////////////////
-// ////////////////////////////////////////////////////////////////////////
+
+//-////////////////////////////////////////////////////////////////////////
+//-////////////////////////////////////////////////////////////////////////
// Module setup:
//
senf::INet4SocketAddress("localhost:44345"));
module::ActiveSocketSource<> udpSource ( inputSocket );
- RateStuffer stuffer ( 1000000000ul,
+ RateStuffer stuffer ( 1000000000ul,
senf::DataPacket::create(std::string("<idle>\n")),
2u, 1u );
module::PassiveSocketSink<> udpSink ( outputSocket );
return 0;
}
-///////////////////////////////cc.e////////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
#undef prefix_
//#include "ppitest.mpp"