reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
CallId.cxx File Reference

Go to the source code of this file.

Macros

#define RESIPROCATE_SUBSYSTEM   Subsystem::SIP
 
#define defineParam(_enum, _name, _type, _RFC_ref_ignored)
 

Functions

 defineParam (fromTag, "from-tag", DataParameter, "RFC 3891 (not in IANA, apparently)")
 
 defineParam (toTag, "to-tag", DataParameter, "RFC 3891 (not in IANA, apparently)")
 
 defineParam (earlyOnly, "early-only", ExistsParameter, "RFC 3891 (not in IANA, apparently)")
 

Macro Definition Documentation

◆ defineParam

#define defineParam (   _enum,
  _name,
  _type,
  _RFC_ref_ignored 
)
Value:
_enum##_Param::DType& \
CallID::param(const _enum##_Param& paramType) \
{ \
checkParsed(); \
_enum##_Param::Type* p = \
static_cast<_enum##_Param::Type*>(getParameterByEnum(paramType.getTypeNum())); \
if (!p) \
{ \
p = new _enum##_Param::Type(paramType.getTypeNum()); \
mParameters.push_back(p); \
} \
return p->value(); \
} \
\
const _enum##_Param::DType& \
CallID::param(const _enum##_Param& paramType) const \
{ \
checkParsed(); \
_enum##_Param::Type* p = \
static_cast<_enum##_Param::Type*>(getParameterByEnum(paramType.getTypeNum())); \
if (!p) \
{ \
InfoLog(<< "Missing parameter " _name " " << ParameterTypes::ParameterNames[paramType.getTypeNum()]); \
DebugLog(<< *this); \
throw Exception("Missing parameter " _name, __FILE__, __LINE__); \
} \
return p->value(); \
}
static Data ParameterNames[MAX_PARAMETER]
static array of ParameterNames indexed by the 2nd element in defineParam(...)

Definition at line 135 of file CallId.cxx.

◆ RESIPROCATE_SUBSYSTEM

#define RESIPROCATE_SUBSYSTEM   Subsystem::SIP

Definition at line 17 of file CallId.cxx.

Function Documentation

◆ defineParam() [1/3]

defineParam ( earlyOnly  ,
"early-only"  ,
ExistsParameter  ,
"RFC 3891 (not in IANA, apparently)"   
)

◆ defineParam() [2/3]

defineParam ( fromTag  ,
"from-tag"  ,
DataParameter  ,
"RFC 3891 (not in IANA, apparently)"   
)

◆ defineParam() [3/3]

defineParam ( toTag  ,
"to-tag"  ,
DataParameter  ,
"RFC 3891 (not in IANA, apparently)"   
)