Example #1
0
 public void Run(PORT_EV eventId)
 {
     dlgt = delegate(TestRfcommPort port2, PORT_EV eventId_) {
         if (preEventDelayMilliseconds != -1)
         {
             Thread.Sleep(preEventDelayMilliseconds);
         }
         port2.NewEvent(eventId_);
     };
     arDlgt = dlgt_BeginInvoke(dlgt, port, eventId, null, null);
 }
Example #2
0
        internal void HandlePortEvent(PORT_EV eventId, IRfcommPort port)
        {
            LogFormat("{3}: {0} ({1}) port: {2}\r\n", eventId, m_state_, port, DebugId);
            lock (_lockKey) {
                if (port != m_port)
                {
                    return;
                }
            }
            int handledCount = 0;

            //
            if ((eventId & PORT_EV_ModemSignal) != 0)
            {
                ++handledCount;
                ; //NOP
            }
            if ((eventId & PORT_EV.CONNECTED) != 0)
            {
                ++handledCount;
                HandleCONNECTED(eventId);
            }
            if ((eventId & PORT_EV.CONNECT_ERR) != 0)
            {
                ++handledCount;
                HandleCONNECT_ERR(eventId);
            }
            if ((eventId & PORT_EV.TXCHAR) != 0)
            {
                ++handledCount;
                ;//NOP
            }
            if ((eventId & PORT_EV.TXEMPTY) != 0)
            {
                ++handledCount;
                FreePendingWrites();
            }
            if ((eventId & PORT_EV.FCS) != 0)   // FlowControl On
            {
                ++handledCount;
            }
            if (((eventId & PORT_EV.FC) != 0) &&
                ((eventId & PORT_EV.FCS) == 0))          // FlowControl Off
            {
                ++handledCount;
                ; // NOP
            }
            //
            if (handledCount == 0)
            {
                Utils.MiscUtils.Trace_WriteLine(DebugId + ": " + "Unknown event: '{0}'=0x{0:X}", eventId);
            }
        }
Example #3
0
 private void HandleCONNECT_ERR(PORT_EV eventId)
 {
     HandleCONNECT_ERR(eventId.ToString(), null);
 }
Example #4
0
 private void HandleCONNECTED(PORT_EV eventId)
 {
     HandleCONNECTED(eventId.ToString());
 }
Example #5
0
 //--------
 internal void NewEvent(PORT_EV eventId)
 {
     parent.HandlePortEvent(eventId, this);
 }
Example #6
0
 public FooParams(Foo dlgt, TestRfcommPort port, PORT_EV eventId)
 {
     this.dlgt    = dlgt;
     this.port    = port;
     this.eventId = eventId;
 }
Example #7
0
        protected static IAsyncResult dlgt_BeginInvoke(Foo dlgt, TestRfcommPort port, PORT_EV eventId,
                                                       AsyncCallback callback, object state)
        {
#if true || PocketPC
            FooParams args = new FooParams(dlgt, port, eventId);
            AsyncNoResult <FooParams> ar = new AsyncNoResult <FooParams>(callback, state, args);
            ThreadPool.QueueUserWorkItem(dlgt_Runner, ar);
            return(ar);
#else
            arDlgt = dlgt.BeginInvoke(port, eventId, null, null); // NETCF-ok
#endif
        }