123456789101112131415161718192021222324252627282930313233343536 |
- package bx
- import (
- "bytes"
- "encoding/binary"
- )
- type CmdDelDynamicArea struct {
- baseBxCmd
- numbers []byte //编号
- }
- func NewCmdDelDynamicArea(numbers []byte) CmdDelDynamicArea {
- return CmdDelDynamicArea{
- baseBxCmd: newBaseCmd(CMD_DEL_DYNAMIC_AREA.group, CMD_DEL_DYNAMIC_AREA.code),
- numbers: numbers,
- }
- }
- func (cmd CmdDelDynamicArea) Build() []byte {
- w := bytes.NewBuffer(make([]byte, 0, 16))
- binary.Write(w, binary.LittleEndian, cmd.Group())
- binary.Write(w, binary.LittleEndian, cmd.Cmd())
- binary.Write(w, binary.LittleEndian, byte(0x01))
- binary.Write(w, binary.LittleEndian, []byte{0x00, 0x00})
- l := byte(len(cmd.numbers))
- if l == 0 {
- binary.Write(w, binary.LittleEndian, 0xff)
- } else {
- binary.Write(w, binary.LittleEndian, l)
- }
- for _, n := range cmd.numbers {
- binary.Write(w, binary.LittleEndian, n)
- }
- return w.Bytes()
- }
|