diff options
Diffstat (limited to 'protocols/ace/RMCast/Fragment.cpp')
-rw-r--r-- | protocols/ace/RMCast/Fragment.cpp | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/protocols/ace/RMCast/Fragment.cpp b/protocols/ace/RMCast/Fragment.cpp deleted file mode 100644 index 27247f0e3f9..00000000000 --- a/protocols/ace/RMCast/Fragment.cpp +++ /dev/null @@ -1,78 +0,0 @@ -// file : ace/RMCast/Fragment.cpp -// author : Boris Kolpackov <boris@kolpackov.net> -// cvs-id : $Id$ - -#include "Fragment.h" - -/* -#include <iostream> -using std::cerr; -using std::endl; -*/ - -namespace ACE_RMCast -{ - Fragment:: - Fragment (Parameters const& params) - : params_ (params), - sn_ (1) - { - } - - void Fragment:: - send (Message_ptr m) - { - if (Data const* data = static_cast<Data const*> (m->find (Data::id))) - { - size_t max_payload_size ( - params_.max_packet_size () - max_service_size); - - if (data->size () <= max_payload_size) - { - u64 sn; - { - Lock l (mutex_); - sn = sn_++; - } - - m->add (Profile_ptr (new SN (sn))); - - out_->send (m); - return; - } - - char const* p = data->buf (); - size_t size (data->size ()); - - // Need fragmentation. - // - u32 packets (size / max_payload_size + (size % max_payload_size ? 1 : 0)); - - // cerr << "size : " << size << endl - // << "packs: " << packets << endl; - - for (u32 i (1); i <= packets; ++i) - { - Message_ptr part (new Message); - - size_t s (i == packets ? size % max_payload_size : max_payload_size); - - // cerr << "pack: " << s << endl; - - u64 sn; - { - Lock l (mutex_); - sn = sn_++; - } - - part->add (Profile_ptr (new SN (sn))); - part->add (Profile_ptr (new Part (i, packets, size))); - part->add (Profile_ptr (new Data (p, s))); - - out_->send (part); - - p += s; - } - } - } -} |