//-------------------------------------------------------------------------------------------------
        public void SetAlarm(int no)
        {
            Alarm pmcAlarm = new Alarm(no);

            pmcPacket packet = new pmcPacket();

            packet.DataClear();
            packet.Signal = (int)COMMAND.cmdAlarm;
            packet.Reply  = (int)REPLY.ack_Success;
            packet.PushData <Alarm>(pmcAlarm);

            fn_EnqueuePacket(packet);
        }
        //---------------------------------------------------------------------------
        private void PollingThread(object obj)
        {
            Queue <pmcPacket> que = obj as Queue <pmcPacket>;

            while (true)
            {
                Thread.Sleep(100);
                if (que.Count < 1)
                {
                    continue;
                }

                pmcPacket stPacket = que.Dequeue();
                if (m_bUsePollLog)
                {
                    printf("[Polling. Packet Recv] " + (COMMAND)stPacket.Signal);
                }

                switch ((COMMAND)stPacket.Signal)
                {
                case COMMAND.cmdCurrentState:
                    stPacket.DataClear();
                    stPacket.Reply = (int)REPLY.ack_Success;
                    stPacket.PushData <State>(curState);
                    SendPacket(stPacket);
                    break;

                case COMMAND.cmdCurrentData:
                    DataList curDataList = new DataList();
                    curDataList.Add(data); curDataList.Add(data2); curDataList.Add(data3); curDataList.Add(data4);
                    stPacket.DataClear();
                    stPacket.Reply = (int)REPLY.ack_Success;
                    stPacket.PushData <DataList>(curDataList);
                    SendPacket(stPacket);
                    break;
                }
            }
        }
Beispiel #3
0
        public void fn_SetSendMsg()
        {
            pmcPacket packet = new pmcPacket();

            packet.DataClear();
            packet.Src    = 6;
            packet.Dest   = 0;
            packet.UnitID = 1;
            packet.Signal = (int)COMMAND.cmdVersion;
            packet.Reply  = (int)REPLY.ack_Success;
            packet.SeqNo  = 0;
            packet.Size   = (int)stVersion.datasize;
            packet.PushData <Samsung.PMC.Packet.Body.Version>(stVersion);
            Server.fn_PushSendQueue(packet);
        }