public MsgHeader(MsgHeader value) {
      /// Initiliaze the protected variables
      m_HeaderRec = new HeaderRec();
      m_HeaderRec.setParent(this);

      /// Copy the values
      m_HeaderRec = value.m_HeaderRec;
      m_HeaderRec.setParent(this);
    }
    public void decode(ByteBuffer bytes, int pos) {

      if (bytes.array() == null) {
        return;
      }
      if (bytes.order() != ByteOrder.LITTLE_ENDIAN) {
        bytes.order(ByteOrder.LITTLE_ENDIAN);
      }

      m_HeaderRec.decode(bytes, pos);
      pos += m_HeaderRec.getSize();
    }
      public boolean isEqual(HeaderRec value) {
        if (m_MessageID != value.getMessageID()) {
          return false;
        }

        return true;
      }
    /**
     * Returns the number of bytes the used data members of the class occupies in the buffer. This
     * is not the number of bytes the data type occupies in Java, but the bytes expected on the
     * wire.
     *
     * @return
     */
    public long getSize() {
      long size = 0;

      size += m_HeaderRec.getSize();

      return size;
    }
 public MsgHeader() {
   m_HeaderRec = new HeaderRec();
   m_HeaderRec.setParent(this);
 }
 public boolean isEqual(MsgHeader value) {
   if (!m_HeaderRec.isEqual(value.getHeaderRec())) {
     return false;
   }
   return true;
 }
    public RejectEventRequest.MsgHeader assign(MsgHeader value) {
      m_HeaderRec = value.m_HeaderRec;
      m_HeaderRec.setParent(this);

      return this;
    }
    public ReportStillImageSensorConfiguration.AppHeader assign(AppHeader value) {
      m_HeaderRec = value.m_HeaderRec;
      m_HeaderRec.setParent(this);

      return this;
    }