protocol
ccsds_frame_protocol
CCSDS transfer frame parser and generator protocol.
logtalk_load(ccsds_frames(loader))staticPublic predicates
parse/2
Parses CCSDS transfer frame(s) from a source. Supported source terms are file(File), stream(Stream), and bytes(Bytes).
staticparse(Source,Frames)parse(+compound,-list(compound)) - one_or_errorgenerate/2
Generates CCSDS transfer frame bytes to a sink. Supported sink terms are file(File), stream(Stream), and bytes(Bytes).
staticgenerate(Sink,Frames)generate(+compound,+list(compound)) - one_or_errorgenerate/3
Generates a list of bytes from a single CCSDS transfer frame term with an open tail. When the selected object includes an FECF, the generated bytes use a freshly computed FECF derived from the remaining frame fields.
staticgenerate(Frame,Bytes,Tail)generate(+compound,-list(byte),--variable) - one_or_errorvalid/1
True if the argument is a valid transfer frame term for the selected object and, when applicable, carries the correct FECF for the remaining frame fields.
staticvalid(Frame)valid(@compound) - zero_or_oneupdate_fecf/2
Computes the correct frame error control field for the selected object configuration and returns the corresponding updated frame term.
staticupdate_fecf(Frame,UpdatedFrame)update_fecf(+compound,-compound) - one_or_errorverify_fecf/1
True if the frame term contains the correct FECF for the selected object configuration.
staticverify_fecf(Frame)verify_fecf(@compound) - zero_or_oneframe_type/2
Returns the transfer frame type for a frame term.
staticframe_type(Frame,Type)frame_type(+compound,-atom) - oneversion/2
Extracts the transfer frame version number.
staticversion(Frame,Version)version(+compound,-integer) - onespacecraft_id/2
Extracts the spacecraft identifier.
staticspacecraft_id(Frame,SpacecraftId)spacecraft_id(+compound,-integer) - onevirtual_channel_id/2
Extracts the virtual channel identifier.
staticvirtual_channel_id(Frame,VirtualChannelId)virtual_channel_id(+compound,-integer) - onedata_field/2
Extracts the transfer frame data field as a list of bytes.
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) - oneProtected predicates
(none)
Private predicates
(none)
Operators
(none)