func NewMessageHeader(b []byte) (*MessageHeader, error) {
	if len(b) != MessageHeaderSize {
		return nil, errors.New("invalid message header size")
	}
	m := &MessageHeader{}
	r := bytes.NewReader(b)
	if err := binary.Read(r, binary.LittleEndian, m); err != nil {
		return nil, err
	}
	return m, nil
}
// NewMessageHeader returns a new message header from a given byte array
NewMessageHeader returns a new message header from a given byte array
// NewMessageHeader returns a new message header from a given byte array
func NewMessageHeader(b []byte) (*MessageHeader, error) {
	if len(b) != MessageHeaderSize {
		return nil, errors.New("invalid message header size")
	}
	m := &MessageHeader{}
	r := bytes.NewReader(b)
	if err := binary.Read(r, binary.LittleEndian, m); err != nil {
		return nil, err
	}
	return m, nil
}
func NewMessageHeader ( b [ ] byte ) ( * MessageHeader , error ) { if len ( b ) != MessageHeaderSize { return nil , errors . New ( " " ) } m := & MessageHeader { } r := bytes . NewReader ( b ) if err := binary . Read ( r , binary . LittleEndian , m ) ; err != nil { return nil , err } return m , nil }
NewMessageHeader returns a new message header from a given byte array
NewMessageHeader returns a new message header from a given byte array