# H450xDispatcher Class Reference

`#include <h450pdu.h>`

Collaboration diagram for H450xDispatcher:

[legend]

## Public Member Functions

| H450xDispatcher (H323Connection &connection)
void | AddOpCode (unsigned opcode, H450xHandler *handler)
virtual void | AttachToSetup (H323SignalPDU &pdu)
virtual void | AttachToAlerting (H323SignalPDU &pdu)
virtual void | AttachToConnect (H323SignalPDU &pdu)
virtual void | AttachToReleaseComplete (H323SignalPDU &pdu)
virtual PBoolean | HandlePDU (const H323SignalPDU &pdu)
virtual PBoolean | OnReceivedInvoke (X880_Invoke &invoke, H4501_InterpretationApdu &interpretation)
virtual PBoolean | OnReceivedReturnResult (X880_ReturnResult &returnResult)
virtual PBoolean | OnReceivedReturnError (X880_ReturnError &returnError)
virtual PBoolean | OnReceivedReject (X880_Reject &reject)
void | SendReturnError (int invokeId, int returnError)
void | SendGeneralReject (int invokeId, int problem)
void | SendInvokeReject (int invokeId, int problem)
void | SendReturnResultReject (int invokeId, int problem)
void | SendReturnErrorReject (int invokeId, int problem)
unsigned | GetNextInvokeId () const

## Protected Attributes

H323Connection & | connection
H450xHandlerArray | handlers
H450xHandlerDict | opcodeHandler
unsigned | nextInvokeId

## Constructor & Destructor Documentation

H450xDispatcher::H450xDispatcher | ( | H323Connection & | connection | ) |

## Member Function Documentation

void H450xDispatcher::AddOpCode | ( | unsigned | opcode,
|  | H450xHandler * | handler |
| ) |  |  |

Add a handler for the op code.

virtual void H450xDispatcher::AttachToAlerting | ( | H323SignalPDU & | pdu | ) | `[virtual]`

virtual void H450xDispatcher::AttachToConnect | ( | H323SignalPDU & | pdu | ) | `[virtual]`

virtual void H450xDispatcher::AttachToReleaseComplete | ( | H323SignalPDU & | pdu | ) | `[virtual]`

virtual void H450xDispatcher::AttachToSetup | ( | H323SignalPDU & | pdu | ) | `[virtual]`

unsigned H450xDispatcher::GetNextInvokeId | ( |  | ) | const`[inline]`

Get the next available invoke Id for H450 operations

virtual PBoolean H450xDispatcher::HandlePDU | ( | const H323SignalPDU & | pdu | ) | `[virtual]`

Handle the H.450.x Supplementary Service PDU if present in the H225_H323_UU_PDU

virtual PBoolean H450xDispatcher::OnReceivedInvoke | ( | X880_Invoke & | invoke,
|  | H4501_InterpretationApdu & | interpretation |
| ) |  |  | `[virtual]`

Handle an incoming X880 Invoke PDU. The default behaviour is to attempt to decode the invoke operation and call the corresponding OnReceived<Operation> method on the EndPoint.

virtual PBoolean H450xDispatcher::OnReceivedReject | ( | X880_Reject & | reject | ) | `[virtual]`

Handle an incoming X880 Reject PDU. The default behaviour is to attempt to match the reject to a previous invoke, return result or return error operation and call OnReceived<Operation>Reject method on the EndPoint.

virtual PBoolean H450xDispatcher::OnReceivedReturnError | ( | X880_ReturnError & | returnError | ) | `[virtual]`

Handle an incoming X880 Return Error PDU. The default behaviour is to attempt to match the return error to a previous invoke operation and call the corresponding OnReceived<Operation>Error method on the EndPoint.

virtual PBoolean H450xDispatcher::OnReceivedReturnResult | ( | X880_ReturnResult & | returnResult | ) | `[virtual]`

Handle an incoming X880 Return Result PDU. The default behaviour is to attempt to match the return result to a previous invoke operation and call the corresponding OnReceived<Operation>Success method on the EndPoint.

void H450xDispatcher::SendGeneralReject | ( | int | invokeId,
|  | int | problem |
| ) |  |  |

void H450xDispatcher::SendInvokeReject | ( | int | invokeId,
|  | int | problem |
| ) |  |  |

void H450xDispatcher::SendReturnError | ( | int | invokeId,
|  | int | returnError |
| ) |  |  |

Send a return error in response to an invoke operation.

void H450xDispatcher::SendReturnErrorReject | ( | int | invokeId,
|  | int | problem |
| ) |  |  |

void H450xDispatcher::SendReturnResultReject | ( | int | invokeId,
|  | int | problem |
| ) |  |  |

## Field Documentation

H323Connection& H450xDispatcher::connection `[protected]`

H450xHandlerArray H450xDispatcher::handlers `[protected]`

unsigned H450xDispatcher::nextInvokeId `[mutable, protected]`

H450xHandlerDict H450xDispatcher::opcodeHandler `[protected]`

The documentation for this class was generated from the following file:

- h450pdu.h