6#define RESIPROCATE_SUBSYSTEM Subsystem::DUM
13 mCallId(msg.header(h_CallID).value())
20 if(msg.
header(h_From).exists(p_tag))
23 mTag = msg.
header(h_From).param(p_tag);
28 if (msg.
header(h_To).exists(p_tag))
30 mTag = msg.
header(h_To).param(p_tag);
44 mTag = msg.
header(h_From).param(p_tag);
49 mTag = msg.
header(h_To).param(p_tag);
54DialogSetId::DialogSetId(
const Data& callId,
const Data& tag)
60DialogSetId::DialogSetId()
69 return mCallId == rhs.mCallId && mTag == rhs.mTag;
75 return mCallId != rhs.mCallId || mTag != rhs.mTag;
81 if (mCallId < rhs.mCallId)
85 if (mCallId > rhs.mCallId)
89 return mTag < rhs.mTag;
95 if (mCallId > rhs.mCallId)
99 if (mCallId < rhs.mCallId)
103 return mTag > rhs.mTag;
120 return os <<
id.mCallId <<
'-' <<
id.mTag ;
#define HashValueImp(type, ret)
#define resip_assert(x)
This file needs to work for both C and C++ code.
An alternative to std::string, encapsulates an arbitrary buffer of bytes.
size_t keyedHash() const
Creates a keyed hash based on the contents of this Data.
bool operator==(const DialogSetId &rhs) const
bool operator!=(const DialogSetId &rhs) const
bool operator<(const DialogSetId &rhs) const
bool operator>(const DialogSetId &rhs) const
static const DialogSetId Empty
static const int tagSize
bytes in to-tag& from-tag, should prob. live somewhere else
static Data computeTag(int numBytes)
Represents a SIP message.
bool isRequest() const
Returns true if message is a request, false otherwise.
const RequestLine & header(const RequestLineType &l) const
Returns the RequestLine. This is only valid for request messages.
bool isResponse() const
Returns true if message is a response, false otherwise.
bool isExternal() const
Check if SipMessage is to be treated as it came off the wire.
dcm! – add UnusedChecking(_enum) below;
size_t hashCombine(size_t seed, size_t hash)
Combines the hashes of the parts of a composite key, eg.
EncodeStream & operator<<(EncodeStream &strm, const BaseException &e)