Exemplo n.º 1
0
        private bool ConnectToSharedMemory()
        {
            try
            {
                memoryStatus = ACC_MEMORY_STATUS.CONNECTING;
                // Connect to shared memory
                physicsMMF    = MemoryMappedFile.OpenExisting("Local\\acpmf_physics");
                graphicsMMF   = MemoryMappedFile.OpenExisting("Local\\acpmf_graphics");
                staticInfoMMF = MemoryMappedFile.OpenExisting("Local\\acpmf_static");

                // Start the timers
                staticInfoTimer.Start();
                ProcessStaticInfo();

                graphicsTimer.Start();
                ProcessGraphics();

                physicsTimer.Start();
                ProcessPhysics();

                // Stop retry timer
                sharedMemoryRetryTimer.Stop();
                memoryStatus = ACC_MEMORY_STATUS.CONNECTED;
                return(true);
            }
            catch (FileNotFoundException)
            {
                staticInfoTimer.Stop();
                graphicsTimer.Stop();
                physicsTimer.Stop();
                return(false);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Stop the timers and dispose of the shared memory handles
        /// </summary>
        public void Stop()
        {
            memoryStatus = ACC_MEMORY_STATUS.DISCONNECTED;
            sharedMemoryRetryTimer.Stop();

            // Stop the timers
            physicsTimer.Stop();
            graphicsTimer.Stop();
            staticInfoTimer.Stop();
        }