summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Event/EC_Filter.i
blob: 3820754ed5a42f9ad7a5dd49867a3488279349bb (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
39
// $Id$

ACE_INLINE
TAO_EC_Filter::TAO_EC_Filter (void)
  :  parent_ (0)
{
}

ACE_INLINE TAO_EC_Filter*
TAO_EC_Filter::parent (void) const
{
  return this->parent_;
}

ACE_INLINE int
TAO_EC_Filter::matches (const RtecEventComm::EventHeader& rhs,
                        const RtecEventComm::EventHeader& lhs)
{
  if ((rhs.source == 0 && rhs.type == 0)
      || (lhs.source == 0 && lhs.type == 0))
    return 1;

  if (rhs.source == 0 || lhs.source == 0)
    return rhs.type == lhs.type;

  if (rhs.type == 0 || lhs.type == 0)
    return rhs.source == lhs.source;

  return (rhs.type == lhs.type && rhs.source == lhs.source);
}

// ****************************************************************

ACE_INLINE
TAO_EC_Null_Filter::TAO_EC_Null_Filter (void)
{
}

// ****************************************************************