object
ccsds_frames
Helpers for introspecting CCSDS transfer frame terms.
logtalk_load(ccsds_frames(loader))static, context_switching_callsPublic predicates
valid/1
True if the argument is a known CCSDS transfer frame term.
staticvalid(Frame)valid(@compound) - zero_or_oneframe_type/2
Returns the CCSDS transfer frame type for a known frame term.
staticframe_type(Frame,Type)frame_type(+compound,-atom) - oneversion/2
Extracts the transfer frame version number from a known frame term.
staticversion(Frame,Version)version(+compound,-integer) - onespacecraft_id/2
Extracts the spacecraft identifier from a known frame term.
staticspacecraft_id(Frame,SpacecraftId)spacecraft_id(+compound,-integer) - onevirtual_channel_id/2
Extracts the virtual channel identifier from a known frame term.
staticvirtual_channel_id(Frame,VirtualChannelId)virtual_channel_id(+compound,-integer) - onedata_field/2
Extracts the raw data field bytes from a known frame term.
staticdata_field(Frame,DataField)data_field(+compound,-list(byte)) - oneocf/2
Extracts the operational control field. Returns none when absent.
staticocf(Frame,OCF)ocf(+compound,-compound) - onefecf/2
Extracts the frame error control field. Returns none when absent.
staticfecf(Frame,FECF)fecf(+compound,-compound) - oneupdate_fecf/2
Refreshes a present frame error control field from the remaining frame fields while leaving frames without an FECF unchanged.
staticupdate_fecf(Frame,UpdatedFrame)update_fecf(+compound,-compound) - one_or_errorverify_fecf/1
True if a present frame error control field matches the remaining frame fields. Frames without an FECF succeed.
staticverify_fecf(Frame)verify_fecf(@compound) - zero_or_oneextract_packets/3
Parses the raw frame data field as CCSDS space packet bytes using the given packet secondary header length.
staticextract_packets(Frame,SecondaryHeaderLength,Packets)extract_packets(+compound,+integer,-list(compound)) - one_or_errorinsert_packets/4
Generates CCSDS packet bytes and replaces the raw data field of a frame term, preserving the remaining header fields unchanged.
staticinsert_packets(Packets,SecondaryHeaderLength,Frame,UpdatedFrame)insert_packets(+list(compound),+integer,+compound,-compound) - one_or_errorProtected predicates
(no local declarations; see entity ancestors if any)
Private predicates
(no local declarations; see entity ancestors if any)
Operators
(none)