Exemplo n.º 1
0
 public virtual void  Run()
 {
     while (running)
     {
         // sort items from oldest to newest
         // we delete the oldest filters
         if (Enclosing_Instance.cache.Count > Enclosing_Instance.cacheCleanSize)
         {
             // empty the temporary set
             sortedFilterItems.Clear();
             lock (Enclosing_Instance.cache.SyncRoot)
             {
                 System.Collections.IDictionaryEnumerator entries = Enclosing_Instance.cache.GetEnumerator();
                 while (entries.MoveNext())
                 {
                     sortedFilterItems.Add(entries.Entry.Key, entries.Entry.Value);
                 }
                 System.Collections.IEnumerator it = sortedFilterItems.GetEnumerator();
                 int numToDelete = (int)((Enclosing_Instance.cache.Count - Enclosing_Instance.cacheCleanSize) * 1.5);
                 int counter     = 0;
                 // loop over the set and delete all of the cache entries not used in a while
                 while (it.MoveNext() && counter++ < numToDelete)
                 {
                     System.Collections.DictionaryEntry entry = (System.Collections.DictionaryEntry)it.Current;
                     Enclosing_Instance.cache.Remove(entry.Key);
                 }
             }
             // empty the set so we don't tie up the memory
             sortedFilterItems.Clear();
         }
         // take a nap
         try
         {
             System.Threading.Thread.Sleep(new System.TimeSpan((System.Int64) 10000 * Enclosing_Instance.cleanSleepTime));
         }
         catch (System.Threading.ThreadInterruptedException)
         {
             // just keep going
         }
     }
 }
Exemplo n.º 2
0
        // METHODS
        private void CreateLetterCipherTable()
        {
            letterCipherTable.Clear();

            char[] letters = alphabet.Letters;

            for (int x = 0; x < letters.Length; ++x)
            {
                int letterCypherIndex = (a * x + b) % m;

                letterCipherTable.Add(letters[x], letters[letterCypherIndex]);
            }
        }
        static StackObject *Clear_0(ILIntepreter __intp, StackObject *__esp, IList <object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject *ptr_of_this_method;
            StackObject *__ret = ILIntepreter.Minus(__esp, 1);

            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
            System.Collections.Generic.SortedDictionary <System.Int64, System.Collections.Generic.List <ILRuntime.Runtime.Intepreter.ILTypeInstance> > instance_of_this_method = (System.Collections.Generic.SortedDictionary <System.Int64, System.Collections.Generic.List <ILRuntime.Runtime.Intepreter.ILTypeInstance> >) typeof(System.Collections.Generic.SortedDictionary <System.Int64, System.Collections.Generic.List <ILRuntime.Runtime.Intepreter.ILTypeInstance> >).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags) 0);
            __intp.Free(ptr_of_this_method);

            instance_of_this_method.Clear();

            return(__ret);
        }
        private void SetupQRTracking()
        {
            try
            {
                qrTracker = new QRCodeWatcher();
                qrTracker.Stop();

                qrCodesList.Clear();
                IsTrackerRunning   = false;
                qrTracker.Added   += QRCodeWatcher_Added;
                qrTracker.Updated += QRCodeWatcher_Updated;
                qrTracker.Removed += QRCodeWatcher_Removed;
                qrTracker.EnumerationCompleted += QRCodeWatcher_EnumerationCompleted;
            }
            catch (Exception ex)
            {
                Debug.Log("QRCodesManager : exception starting the tracker " + ex.ToString());
            }

            if (AutoStartQRTracking)
            {
                StartQRTracking();
            }
        }
Exemplo n.º 5
0
        public void StopQRTracking()
        {
            if (IsTrackerRunning)
            {
                IsTrackerRunning = false;
                if (qrTracker != null)
                {
                    qrTracker.Stop();
                    qrCodesList.Clear();
                }

                var handlers = QRCodesTrackingStateChanged;
                if (handlers != null)
                {
                    handlers(this, false);
                }
            }
        }
Exemplo n.º 6
0
 public void StopQRTracking()
 {
     if (IsTrackerRunning)
     {
         IsTrackerRunning = false;
         if (qrTracker != null)
         {
             qrTracker.Stop();
             qrCodesList.Clear();
         }
         StartResult = QRTrackerStartResult.DeviceNotConnected;
         var handlers = QRCodesTrackingStateChanged;
         if (handlers != null)
         {
             handlers(this, false);
         }
     }
 }
Exemplo n.º 7
0
 private void HandleEvents()
 {
     lock (pendingActions)
     {
         while (pendingActions.Count > 0)
         {
             var action = pendingActions.Dequeue();
             if (action.type == ActionData.Type.Added)
             {
                 GameObject qrCodeObject = Instantiate(qrCodePrefab, new Vector3(0, 0, 0), Quaternion.identity);
                 qrCodeObject.GetComponent <SpatialGraphCoordinateSystem>().Id = action.qrCode.Id;
                 qrCodeObject.GetComponent <QRCode>().qrCode = action.qrCode;
                 qrCodesObjectsList.Add(action.qrCode.Id, qrCodeObject);
             }
             else if (action.type == ActionData.Type.Updated)
             {
                 if (!qrCodesObjectsList.ContainsKey(action.qrCode.Id))
                 {
                     GameObject qrCodeObject = Instantiate(qrCodePrefab, new Vector3(0, 0, 0), Quaternion.identity);
                     qrCodeObject.GetComponent <SpatialGraphCoordinateSystem>().Id = action.qrCode.Id;
                     qrCodeObject.GetComponent <QRCode>().qrCode = action.qrCode;
                     qrCodesObjectsList.Add(action.qrCode.Id, qrCodeObject);
                 }
             }
             else if (action.type == ActionData.Type.Removed)
             {
                 if (qrCodesObjectsList.ContainsKey(action.qrCode.Id))
                 {
                     Destroy(qrCodesObjectsList[action.qrCode.Id]);
                     qrCodesObjectsList.Remove(action.qrCode.Id);
                 }
             }
         }
     }
     if (clearExisting)
     {
         clearExisting = false;
         foreach (var obj in qrCodesObjectsList)
         {
             Destroy(obj.Value);
         }
         qrCodesObjectsList.Clear();
     }
 }
Exemplo n.º 8
0
        private void HandleEvents()
        {
            lock (pendingActions)
            {
                while (pendingActions.Count > 0)
                {
                    var action = pendingActions.Dequeue();
                    if (action.type == ActionData.Type.Added)
                    {
                        GameObject qrCodeObject = Instantiate(qrCodePrefab, new Vector3(0, 0, 0), Quaternion.identity);
                        qrCodeObject.GetComponent <SpatialGraphNodeTracker>().Id = action.qrCode.SpatialGraphNodeId;
                        qrCodeObject.GetComponent <QRCode>().qrCode = action.qrCode;
                        qrCodesObjectsList.Add(action.qrCode.Id, qrCodeObject);

                        //AROA EDIT - Assign object to QRCode script
                        Debug.Log("Action.qrCode.Data = " + action.qrCode.Data);
                        qrCodeObject.GetComponent <QRCode>().textToSpeech    = textToSpeech;
                        qrCodeObject.GetComponent <QRCode>().obstacleManager = obstacleManager;

                        if (action.qrCode.Data == "QR Code 1")
                        {
                            layout = "Layout 1";
                        }

                        else if (action.qrCode.Data == "QR Code 2")
                        {
                            layout = "Layout 2";
                        }

                        else if (action.qrCode.Data == "QR Code 3")
                        {
                            layout = "Layout 3";
                        }

                        else if (action.qrCode.Data == "QR Code 4")
                        {
                            layout = "Layout 4";
                        }

                        else if (action.qrCode.Data == "QR Code 5")
                        {
                            layout = "Layout 5";
                        }

                        else if (action.qrCode.Data == "QR Code 6")
                        {
                            layout = "Layout 6";
                        }

                        else if (action.qrCode.Data == "QR Code 7")
                        {
                            layout = "Layout 7";
                        }

                        else if (action.qrCode.Data == "QR Code 8")
                        {
                            layout = "Layout 8";
                        }

                        else if (action.qrCode.Data == "Demo")
                        {
                            layout = "Demo Layout";
                        }

                        else
                        {
                            layout = "Unrecognized Layout";
                        }

                        experimentLogger.layout = layout;
                        qrCodeObject.GetComponent <QRCode>().layout           = layout;
                        qrCodeObject.GetComponent <QRCode>().trackedObject    = obstacleCollection;
                        qrCodeObject.GetComponent <QRCode>().experimentLogger = experimentLogger;

                        //Assign obstacles to QR Code object
                        qrCodeObject.GetComponent <QRCode>().obstLow1  = obstLow1;
                        qrCodeObject.GetComponent <QRCode>().obstLow2  = obstLow2;
                        qrCodeObject.GetComponent <QRCode>().obstHigh1 = obstHigh1;
                        qrCodeObject.GetComponent <QRCode>().obstHigh2 = obstHigh2;
                        qrCodeObject.GetComponent <QRCode>().obstWide1 = obstWide1;
                        qrCodeObject.GetComponent <QRCode>().obstWide2 = obstWide2;
                    }
                    else if (action.type == ActionData.Type.Updated)
                    {
                        if (!qrCodesObjectsList.ContainsKey(action.qrCode.Id))
                        {
                            GameObject qrCodeObject = Instantiate(qrCodePrefab, new Vector3(0, 0, 0), Quaternion.identity);
                            qrCodeObject.GetComponent <SpatialGraphNodeTracker>().Id = action.qrCode.SpatialGraphNodeId;
                            qrCodeObject.GetComponent <QRCode>().qrCode = action.qrCode;
                            qrCodesObjectsList.Add(action.qrCode.Id, qrCodeObject);

                            //AROA EDIT
                            //QR codes created using https://www.qr-code-generator.com/
                            Debug.Log("Action.qrCode.Data = " + action.qrCode.Data);
                            qrCodeObject.GetComponent <QRCode>().textToSpeech    = textToSpeech;
                            qrCodeObject.GetComponent <QRCode>().obstacleManager = obstacleManager;


                            if (action.qrCode.Data == "QR Code 1")
                            {
                                layout = "Layout 1";
                            }

                            else if (action.qrCode.Data == "QR Code 2")
                            {
                                layout = "Layout 2";
                            }

                            else if (action.qrCode.Data == "QR Code 3")
                            {
                                layout = "Layout 3";
                            }

                            else if (action.qrCode.Data == "QR Code 4")
                            {
                                layout = "Layout 4";
                            }

                            else if (action.qrCode.Data == "QR Code 5")
                            {
                                layout = "Layout 5";
                            }

                            else if (action.qrCode.Data == "QR Code 6")
                            {
                                layout = "Layout 6";
                            }

                            else if (action.qrCode.Data == "QR Code 7")
                            {
                                layout = "Layout 7";
                            }

                            else if (action.qrCode.Data == "QR Code 8")
                            {
                                layout = "Layout 8";
                            }

                            else if (action.qrCode.Data == "Demo")
                            {
                                layout = "Demo Layout";
                            }

                            else
                            {
                                layout = "Unrecognized Layout";
                            }

                            qrCodeObject.GetComponent <QRCode>().layout           = layout;
                            qrCodeObject.GetComponent <QRCode>().trackedObject    = obstacleCollection;
                            qrCodeObject.GetComponent <QRCode>().experimentLogger = experimentLogger;

                            //Assign obstacles to QR Code object
                            qrCodeObject.GetComponent <QRCode>().obstLow1  = obstLow1;
                            qrCodeObject.GetComponent <QRCode>().obstLow2  = obstLow2;
                            qrCodeObject.GetComponent <QRCode>().obstHigh1 = obstHigh1;
                            qrCodeObject.GetComponent <QRCode>().obstHigh2 = obstHigh2;
                            qrCodeObject.GetComponent <QRCode>().obstWide1 = obstWide1;
                            qrCodeObject.GetComponent <QRCode>().obstWide2 = obstWide2;
                        }
                    }
                    else if (action.type == ActionData.Type.Removed)
                    {
                        if (qrCodesObjectsList.ContainsKey(action.qrCode.Id))
                        {
                            Destroy(qrCodesObjectsList[action.qrCode.Id]);
                            qrCodesObjectsList.Remove(action.qrCode.Id);
                        }
                    }
                }
            }
            if (clearExisting)
            {
                clearExisting = false;
                foreach (var obj in qrCodesObjectsList)
                {
                    Destroy(obj.Value);
                }
                qrCodesObjectsList.Clear();
            }
        }
Exemplo n.º 9
0
 private void Reset()
 {
     openSet.Clear();
     closedSet.Clear();
     path.Clear();
 }