#[non_exhaustive]pub enum Notification {
CamReady,
ApplicationInfo {
application_type: u8,
manufacturer: u16,
code: u16,
menu: String,
},
CaInfo {
ca_system_ids: Vec<u16>,
},
CaPmtReply {
program_number: u16,
ca_enable: Option<CaEnable>,
descrambling_ok: bool,
},
Entitlement {
program_number: u16,
ca_enable: CaEnable,
descrambling_ok: bool,
},
Mmi(MmiEvent),
HostControl(HostControlEvent),
SessionOpened {
resource: ResourceId,
},
SessionClosed {
session_nb: u16,
},
Error {
detail: String,
},
HotPlug(HotPlug),
}Expand description
A host-facing event surfaced by the stack (the useful outputs of a CI session — what an application reacts to).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
CamReady
The module is present and the resource-manager handshake completed.
ApplicationInfo
application_information was received.
Fields
The decoded menu string.
CaInfo
ca_info was received — the CA system ids the module supports.
CaPmtReply
A ca_pmt_reply was received for a prior CA_PMT.
Fields
Entitlement
A per-programme entitlement status transition (#763). Edge-triggered:
fires once per program_number only when the programme-level
CA_enable status (EN 50221 §8.4.3.5, Table 26) changes versus the
last observed ca_pmt_reply for that programme. The transition is
detected by the periodic re-query (Driver::set_requery_interval),
which re-sends the active ca_pmts with ca_pmt_cmd_id = query so
the CAM re-evaluates and replies. Complements the coarse #726
HotPlug module/card layer with the fine-grained per-service layer.
(Programme-level status only; the ES-level CA_enable entries are
not evaluated for this event.)
Fields
Mmi(MmiEvent)
An MMI menu/enquiry the host should display.
HostControl(HostControlEvent)
A host_control request the CAM made of the host (EN 50221 §8.5.1). The
host acts on it out-of-band (retune / PID replace); the runtime only
surfaces the decoded request.
SessionOpened
A session for resource was opened.
Fields
resource: ResourceIdThe resource the session serves.
SessionClosed
A session closed.
Error
A protocol error surfaced by the stack (non-fatal; informational).
HotPlug(HotPlug)
A CAM/card hot-plug transition (#726). See HotPlug.
Implementations§
Trait Implementations§
Source§impl Clone for Notification
impl Clone for Notification
Source§fn clone(&self) -> Notification
fn clone(&self) -> Notification
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more