X13.Periphery.MsDevice.ProccessAcknoledge C# (CSharp) Method

ProccessAcknoledge() private method

private ProccessAcknoledge ( MsMessage rMsg ) : void
rMsg MsMessage
return void
    private void ProccessAcknoledge(MsMessage rMsg) {
      MsMessage msg=null;
      lock(_sendQueue) {
        MsMessage reqMsg;
        if(_sendQueue.Count>0 && (reqMsg=_sendQueue.Peek()).MsgTyp==rMsg.ReqTyp && reqMsg.MessageId==rMsg.MessageId) {
          _sendQueue.Dequeue();
          _waitAck=false;
          if(_sendQueue.Count>0 && !(msg=_sendQueue.Peek()).IsRequest) {
            _sendQueue.Dequeue();
          }
        }
      }
      if(msg==null && !_waitAck && state==State.AWake) {
        ReisePool(null);
        if(_waitAck) {
          return; // sended from pool
        }
      }
      if(msg!=null || state==State.AWake) {
        if(msg!=null && msg.IsRequest) {
          _tryCounter=2;
        }
        SendIntern(msg);
      } else if(!_waitAck) {
        ResetTimer();
      }
    }
    private void Send(MsMessage msg) {