Method: OpenC3::CcsdsPacket#initialize
- Defined in:
- lib/openc3/ccsds/ccsds_packet.rb
#initialize(target_name = nil, packet_name = nil, include_ccsds_data = true) ⇒ CcsdsPacket
Creates a CCSDS packet by setting the target and packet name and then defining all the fields in a CCSDS packet with a primary header. If a secondary header is desired, define a secondary header field and then override the CcsdsData field to start after bit offset 48.
58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/openc3/ccsds/ccsds_packet.rb', line 58 def initialize(target_name = nil, packet_name = nil, include_ccsds_data = true) super(target_name, packet_name, :BIG_ENDIAN) define_item('CcsdsVersion', 0, 3, :UINT) define_item('CcsdsType', 3, 1, :UINT) define_item('CcsdsShf', 4, 1, :UINT) define_item('CcsdsApid', 5, 11, :UINT) define_item('CcsdsSeqflags', 16, 2, :UINT) item = define_item('CcsdsSeqcnt', 18, 14, :UINT) item.overflow = :TRUNCATE define_item('CcsdsLength', 32, 16, :UINT) define_item('CcsdsData', 48, 0, :BLOCK) if include_ccsds_data end |