|
vdr
2.4.0
|
Public Member Functions | |
| cCiTransportConnection (cCamSlot *CamSlot, uint8_t Tcid) | |
| virtual | ~cCiTransportConnection () |
| void | SetTsPostProcessor (cCiSession *CiSession) |
| bool | TsPostProcess (uint8_t *TsPacket) |
| cCamSlot * | CamSlot (void) |
| uint8_t | Tcid (void) const |
| void | CreateConnection (void) |
| void | DeleteConnection (void) |
| const char * | GetCamName (void) |
| bool | Ready (void) |
| bool | HasUserIO (void) |
| void | SendData (int Length, const uint8_t *Data) |
| bool | Process (cTPDU *TPDU=NULL) |
| cCiSession * | GetSessionByResourceId (uint32_t ResourceId) |
Private Types | |
| enum | eState { stIDLE, stCREATION, stACTIVE, stDELETION } |
Private Member Functions | |
| void | SendTPDU (uint8_t Tag, int Length=0, const uint8_t *Data=NULL) |
| void | SendTag (uint8_t Tag, uint16_t SessionId, uint32_t ResourceId=0, int Status=-1) |
| void | Poll (void) |
| uint32_t | ResourceIdToInt (const uint8_t *Data) |
| cCiSession * | GetSessionBySessionId (uint16_t SessionId) |
| void | OpenSession (int Length, const uint8_t *Data) |
| void | CloseSession (uint16_t SessionId) |
| void | HandleSessions (cTPDU *TPDU) |
Private Attributes | |
| cCamSlot * | camSlot |
| uint8_t | tcid |
| eState | state |
| bool | createConnectionRequested |
| bool | deleteConnectionRequested |
| bool | hasUserIO |
| cTimeMs | alive |
| cTimeMs | timer |
| cCiSession * | sessions [MAX_SESSIONS_PER_TC+1] |
| cCiSession * | tsPostProcessor |
|
private |
| cCiTransportConnection::cCiTransportConnection | ( | cCamSlot * | CamSlot, |
| uint8_t | Tcid | ||
| ) |
Definition at line 1773 of file ci.c.
References cCiSession::CamSlot(), dbgprotocol, MAX_SESSIONS_PER_TC, cCamSlot::SlotIndex(), cCamSlot::SlotNumber(), and TC_ALIVE_TIMEOUT.
|
virtual |
Definition at line 1788 of file ci.c.
References MAX_SESSIONS_PER_TC.
|
inline |
Definition at line 603 of file ci.c.
References cCaActivationReceiver::camSlot.
|
private |
Definition at line 1907 of file ci.c.
References dbgprotocol, esyslog, cCiSession::SessionId(), SS_NOT_ALLOCATED, SS_OK, and ST_CLOSE_SESSION_RESPONSE.
| const char * cCiTransportConnection::GetCamName | ( | void | ) |
Definition at line 1812 of file ci.c.
References cCiApplicationInformation::GetMenuString(), and RI_APPLICATION_INFORMATION.
| cCiSession * cCiTransportConnection::GetSessionByResourceId | ( | uint32_t | ResourceId | ) |
Definition at line 1870 of file ci.c.
References MAX_SESSIONS_PER_TC, RESOURCE_CLASS_MASK, and cCiSession::ResourceId().
|
private |
Definition at line 1865 of file ci.c.
References MAX_SESSIONS_PER_TC, and cCiSession::SessionId().
|
private |
Definition at line 1922 of file ci.c.
References cTPDU::Data(), esyslog, get_unaligned(), cCiSession::Process(), cCiSession::SessionId(), ST_CLOSE_SESSION_REQUEST, ST_CLOSE_SESSION_RESPONSE, ST_CREATE_SESSION_RESPONSE, ST_OPEN_SESSION_REQUEST, and ST_SESSION_NUMBER.
|
private |
Definition at line 1884 of file ci.c.
References dbgprotocol, esyslog, cCiResourceHandlers::GetNewCiSession(), MAX_SESSIONS_PER_TC, cCiSession::ResourceId(), cCiSession::SessionId(), SS_OK, and ST_OPEN_SESSION_RESPONSE.
|
private |
Definition at line 1850 of file ci.c.
References dbgprotocol, DumpPolls, DumpTPDUDataTransfer, and T_DATA_LAST.
| bool cCiTransportConnection::Process | ( | cTPDU * | TPDU = NULL | ) |
Definition at line 1949 of file ci.c.
References DATA_INDICATOR, dbgprotocol, esyslog, cCiMMI::HasUserIO(), MAX_SESSIONS_PER_TC, cTPDU::Status(), T_CREATE_TC, T_CTC_REPLY, T_DATA_LAST, T_DATA_MORE, T_DELETE_TC, T_DTC_REPLY, T_NEW_TC, T_RCV, T_REQUEST_TC, T_SB, T_TC_ERROR, cTPDU::Tag(), and TC_ALIVE_TIMEOUT.
| bool cCiTransportConnection::Ready | ( | void | ) |
Definition at line 1806 of file ci.c.
References cCiConditionalAccessSupport::Ready(), and RI_CONDITIONAL_ACCESS_SUPPORT.
|
private |
Definition at line 1860 of file ci.c.
References get_unaligned().
| void cCiTransportConnection::SendData | ( | int | Length, |
| const uint8_t * | Data | ||
| ) |
Definition at line 1825 of file ci.c.
References T_DATA_LAST.
|
private |
Definition at line 1832 of file ci.c.
References put_unaligned(), and cCiSession::SendData().
|
private |
Definition at line 1818 of file ci.c.
References TC_POLL_TIMEOUT.
| void cCiTransportConnection::SetTsPostProcessor | ( | cCiSession * | CiSession | ) |
| bool cCiTransportConnection::TsPostProcess | ( | uint8_t * | TsPacket | ) |
|
private |
|
private |
1.8.11