Example #1
0
        // Send a message to the Utopia-HUB informing of the current stimulus state
        public virtual StimulusEvent sendStimulusEvent(int[] stimulusState,
                                                       long timestamp  = -1,
                                                       int targetState = -1,
                                                       int[] objIDs    = null)
        {
            StimulusEvent stimEvent =
                this.mkStimulusEvent(stimulusState,
                                     timestamp,
                                     targetState,
                                     objIDs);

            if (this.client != null)
            {
                this.client.sendMessage(stimEvent);
            }
            // erp injection for debugging with fakedata
            if (targetState == 0 || targetState == 1)
            {
                injectERP(targetState);
            }
            return(stimEvent);
        }
Example #2
0
        // Send a message to the Utopia-HUB informing of the current stimulus state
        public virtual StimulusEvent sendStimulusEvent(int[] stimulusState,
                                                       long timestamp = -1,
                                                       int target_idx = -1,
                                                       int[] objIDs   = null)
        {
            StimulusEvent stimEvent =
                this.mkStimulusEvent(stimulusState,
                                     timestamp,
                                     target_idx,
                                     objIDs);

            if (stimulusState.Length > 0 && this.client != null)
            {
                this.client.sendMessage(stimEvent);
            }
            // erp injection for debugging with fakedata
            int target_state = target_idx >= 0 && target_idx < stimulusState.Length ? stimulusState[target_idx] : -1;

            if (target_state == 0 || target_state == 1)
            {
                injectERP(target_state, this.client.getHost());
            }
            return(stimEvent);
        }
Example #3
0
        public UtopiaMessage decodePayload()
        {
            //  Decode the payload
            UtopiaMessage evt = null;

            if ((this.msgID == StimulusEvent.MSGID))
            {
                if ((VERBOSITY > 2))
                {
                    System.Console.WriteLine("Trying to read "
                                             + StimulusEvent.MSGNAME + " message");
                }

                evt = StimulusEvent.deserialize(this.msgbuffer);
            }
            else if ((this.msgID == PredictedTargetProb.MSGID))
            {
                if ((VERBOSITY > 2))
                {
                    System.Console.WriteLine("Trying to read "
                                             + PredictedTargetProb.MSGNAME + " message");
                }

                evt = PredictedTargetProb.deserialize(this.msgbuffer);
            }
            else if ((this.msgID == ModeChange.MSGID))
            {
                if ((VERBOSITY > 2))
                {
                    System.Console.WriteLine("Trying to read " + ModeChange.MSGNAME + " message");
                }

                evt = ModeChange.deserialize(this.msgbuffer);
            }
            else if ((this.msgID == Reset.MSGID))
            {
                if ((VERBOSITY > 2))
                {
                    System.Console.WriteLine("Trying to read " + Reset.MSGNAME + " message");
                }

                evt = Reset.deserialize(this.msgbuffer);
            }
            else if ((this.msgID == NewTarget.MSGID))
            {
                if ((VERBOSITY > 2))
                {
                    System.Console.WriteLine("Trying to read " + NewTarget.MSGNAME + " message");
                }

                evt = NewTarget.deserialize(this.msgbuffer);
            }
            else if ((this.msgID == Heartbeat.MSGID))
            {
                if ((VERBOSITY > 2))
                {
                    System.Console.WriteLine("Trying to read " + Heartbeat.MSGNAME + " message");
                }

                evt = Heartbeat.deserialize(this.msgbuffer);
            }
            else
            {
                throw new ClientException("Unsupported Message type: " + this.msgID);
            }

            if ((VERBOSITY > 1))
            {
                System.Console.WriteLine("Got message: " + evt.ToString());
            }

            return(evt);
        }
Example #4
0
        private static void sendTestMessages(UtopiaClient utopiaClient, int offset)
        {
            //  write some test messages..
            int[] objIDs = new int[10];
            for (int i = 0; (i < objIDs.Length); i++)
            {
                objIDs[i] = i;
            }

            int[] objState = new int[objIDs.Length];
            //  send some test StimulusEvents
            for (int i = 0; (i < 5); i++)
            {
                for (int j = 0; (j < objState.Length); j++)
                {
                    objState[j] = (i + offset);
                }

                StimulusEvent e = new StimulusEvent(utopiaClient.getTimeStamp(), objIDs, objState);
                Console.WriteLine("Sending: " + e.ToString() + " -> server");
                try {
                    utopiaClient.sendMessage(e);
                }
                catch (IOException ex) {
                    Console.WriteLine(ex);
                }

                System.Threading.Thread.Sleep(1000);
            }

            {
                //  PREDICTEDTARGETPROB
                PredictedTargetProb e = new PredictedTargetProb(utopiaClient.getTimeStamp(), 1, ((float)(0.99)));
                Console.WriteLine("Sending: " + e.ToString() + " -> server");
                utopiaClient.sendMessage(e);
                System.Threading.Thread.Sleep(1000);
            }

            {
                //  PREDICTEDTARGETDIST
                PredictedTargetDist e = new PredictedTargetDist(utopiaClient.getTimeStamp(), new int[] { 1, 2, 3 }, new float[] { .1f, .2f, .3f });
                Console.WriteLine("Sending: " + e.ToString() + " -> server");
                utopiaClient.sendMessage(e);
                System.Threading.Thread.Sleep(1000);
            }
            {
                //  HEARTBEAT V.2.0
                Heartbeat e = new Heartbeat(utopiaClient.getTimeStamp(), "TestMessage");
                Console.WriteLine("Sending: " + e.ToString() + " -> server");
                utopiaClient.sendMessage(e);
                System.Threading.Thread.Sleep(1000);
            }
            // LOG
            {
                Log e = new Log(utopiaClient.getTimeStamp(), "ClientTest");
                Console.WriteLine("Sending: " + e.ToString() + " -> server");
                utopiaClient.sendMessage(e);
                System.Threading.Thread.Sleep(1000);
            }
            {
                //  MODECHANGE
                ModeChange e = new ModeChange(utopiaClient.getTimeStamp(), "ClientTest");
                Console.WriteLine("Sending: " + e.ToString() + " -> server");
                utopiaClient.sendMessage(e);
                System.Threading.Thread.Sleep(1000);
            }
            {
                //  RESET
                Reset e = new Reset(utopiaClient.getTimeStamp());
                Console.WriteLine("Sending: " + e.ToString() + " -> server");
                utopiaClient.sendMessage(e);
                System.Threading.Thread.Sleep(1000);
            }
            {
                //  NEWTARGET
                NewTarget e = new NewTarget(utopiaClient.getTimeStamp());
                Console.WriteLine("Sending: " + e.ToString() + " -> server");
                utopiaClient.sendMessage(e);
                System.Threading.Thread.Sleep(1000);
            }
        }