blob: cf1e818510f0d39b1ab5e18771fb7ab6d05843f1 (
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
/* -*- C++ -*- */
// $Id$
// ============================================================================
//
// = LIBRARY
// ace
//
// = FILENAME
// CLASSIX_Group_Stamp.h
//
// = AUTHOR(S)
// Nokia Telecommunications
//
// ============================================================================
#ifndef ACE_CLASSIX_GROUP_STAMP_H
#define ACE_CLASSIX_GROUP_STAMP_H
/* ------------------------------------------------------------------------- */
#include "ace/CLASSIX/CLASSIX_Group.h"
class ACE_CLASSIX_Group_Stamp : public ACE_CLASSIX_Group
// = TITLE
// Wrapper over Chorus's Group using <Stamp> for naming the group.
//
// = DESCRIPTION
// This is a subclass of <ACE_CLASSIX_Group>.
//
// Its encapsulated group is named by a <stamp>. However,
// <KnCap> is still the unique identifier of the group.
//
// = NOTE
// As at the time of writing, The stamp is contained in the ui.uiTail
// field of <KnCap>.
//
// = SEE ALSO
// <ACE_CLASSIX_Group>, <ACE_CLASSIX_Group_Dynamic>
//
{
public:
enum
{
ILLEGAL_STAMP = 0
/* Have we defined the range of valid stamps? */
};
// = INITIALIZATION
ACE_CLASSIX_Group_Stamp();
// default constructor. Does not contain group information..
ACE_CLASSIX_Group_Stamp(int /* stamp */);
// creates a group use the specfied stamp
virtual void set_addr(void*, /* pointer to the stamp */
int = 0 /* not used */);
// Replaces the existing group according to the supplied stamp
// = ACCESS
virtual ACE_CLASSIX_Addr::Addr_Type is_type(void) const;
// returns STAMP type
int get_stamp() const;
// Returns the stamp
// If the address is not configured, the return value is unpredictable.
// = HELPER
void dump(void) const;
private:
u_int stamp_;
// disable copy/assignment constructor
ACE_CLASSIX_Group_Stamp(ACE_CLASSIX_Group_Stamp const&);
ACE_CLASSIX_Group_Stamp const& operator=(ACE_CLASSIX_Group_Stamp const&);
};
/* ------------------------------------------------------------------------- */
#if defined (__ACE_INLINE__)
#include "ace/CLASSIX/CLASSIX_Group_Stamp.i"
#endif /* __ACE_INLINE__ */
#endif /* ACE_CLASSIX_GROUP_STAMP_H */
|