예제 #1
0
            public LocalCache(RouteMappingDoubleBufferQueue routingTables, IAdapter producerAdapter)
            {
                m_localCacheLock         = new object();
                m_localSignalLookup      = new Dictionary <Guid, List <Producer> >();
                m_localDestinationLookup = new Dictionary <Consumer, Producer>();
                m_routingTables          = routingTables;

                IInputAdapter  inputAdapter  = producerAdapter as IInputAdapter;
                IActionAdapter actionAdapter = producerAdapter as IActionAdapter;

                if ((object)inputAdapter != null)
                {
                    inputAdapter.NewMeasurements += Route;
                }
                else if ((object)actionAdapter != null)
                {
                    actionAdapter.NewMeasurements += Route;
                }
            }
예제 #2
0
            public LocalCache(RouteMappingDoubleBufferQueue routingTables, IAdapter producerAdapter)
            {
                m_localCacheLock = new object();
                m_localSignalLookup = new Dictionary<Guid, List<Producer>>();
                m_localDestinationLookup = new Dictionary<Consumer, Producer>();
                m_routingTables = routingTables;

                IInputAdapter inputAdapter = producerAdapter as IInputAdapter;
                IActionAdapter actionAdapter = producerAdapter as IActionAdapter;

                if ((object)inputAdapter != null)
                    inputAdapter.NewMeasurements += Route;
                else if ((object)actionAdapter != null)
                    actionAdapter.NewMeasurements += Route;
            }