summaryrefslogtreecommitdiff
path: root/protocols/ace/RMCast/Simulator.cpp
blob: c449821aa95933635c58d264e8401c272c062ac8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// author    : Boris Kolpackov <boris@kolpackov.net>
// $Id$

#include "ace/OS_NS_time.h"
#include "Simulator.h"

namespace ACE_RMCast
{
  Simulator::Simulator ()
  {
    ACE_OS::srand ((unsigned int)ACE_OS::time (0));
  }

  void Simulator::send (Message_ptr m)
  {
    // Note: Simulator may work in unpredictable ways mainly due
    // to the "reliable loopback" mechanism.
    //
    out_->send (m);
    return;

    /*int r (rand ());

    if ((r % 3) == 0) return;

    Lock l (mutex_);

    if (hold_.get ())
    {
      out_->send (m);
      out_->send (hold_);
    }
    else
    {
      hold_ = m;
    }*/
  }
}