public void Stop() { lock (_nodeLock) { if (_listener != null) { _listener.Kill(); } _listener = null; if (_heartbeat != null) { _heartbeat.Kill(); } _heartbeat = null; if (_heartbeatObservers != null) { foreach (HeartbeatObserver heartbeatListener in _heartbeatObservers.Values) { heartbeatListener.Kill(); } _heartbeatObservers.Clear(); } _heartbeatObservers = null; isRunning = false; Utility.WriteDebug("Stopped"); } }
/// <summary> /// Adds to listeners one instance of each type implementing CodeElementListener interface /// and defined in namespace TypeCobol.Compiler.Diagnostics. /// TODO: the list of namespace where CodeElementListeners are searched for should not be hard-coded /// </summary> internal void CreateListeners() { //Do nothig if listners already exist if (_listeners != null) { return; } _listeners = new List <NodeListener <TCtx> >(); //Return if no StaticNodeListenerFactory exist if (StaticNodeListenerFactory == null) { return; } lock (typeof(NodeDispatcher <TCtx>)) { foreach (NodeListenerFactory <TCtx> factory in StaticNodeListenerFactory) { //Allocate listeners from static factories. NodeListener <TCtx> listener = factory(); if (listener != null) { _listeners.Add(listener); } } } }
private Dictionary <string, CameraMode> _cameraModes; // The list of camera mode instances public CameraControlSystem(SceneManager sceneManager, string name, Camera camera = null, bool reCalcOnTargetMoving = true) { _sceneMgr = sceneManager; _name = name; _targetNode = null; _targetNodeListener = null; _recalcOnTargetMoving = reCalcOnTargetMoving; _currentCameraMode = null; _cameraNode = _sceneMgr.RootSceneNode.CreateChildSceneNode(_name + "SceneNode"); if (camera == null) { _camera = _sceneMgr.CreateCamera(_name); _isOwnCamera = true; } else { _camera = camera; _isOwnCamera = false; } //Reset to default parameters _camera.Position = Vector3.ZERO; _camera.Orientation = Quaternion.IDENTITY; // ... and attach the Ogre camera to the camera node _cameraNode.AttachObject(_camera); _cameraModes = new Dictionary <string, CameraMode>(); }
public void Start() { lock (_nodeLock) { RecoverStableStorage(); _listener = new NodeListener(this.Deliver, this._location); _listener.start(); _heartbeat = new Heartbeat(this.Broadcast); _heartbeat.start(); _heartbeatObservers = new Dictionary <int, HeartbeatObserver>(); foreach (NodeLocation node in this._nodes) { if (node == _location) { continue; } HeartbeatObserver nodeHeartbeatObserver = new HeartbeatObserver(this.ElectNewLeader, node); nodeHeartbeatObserver.start(); _heartbeatObservers[node.getNum()] = nodeHeartbeatObserver; } isRunning = true; Utility.WriteDebug("Started"); } }
private float _timeSinceLastFrameLastUpdate; // Time value passed to the last call of the method "Update" #endregion Fields #region Constructors public CameraControlSystem(SceneManager sceneManager, string name, Camera camera = null, bool reCalcOnTargetMoving = true) { _sceneMgr = sceneManager; _name = name; _targetNode = null; _targetNodeListener = null; _recalcOnTargetMoving = reCalcOnTargetMoving; _currentCameraMode = null; _cameraNode = _sceneMgr.RootSceneNode.CreateChildSceneNode(_name + "SceneNode"); if (camera == null) { _camera = _sceneMgr.CreateCamera(_name); _isOwnCamera = true; } else { _camera = camera; _isOwnCamera = false; } //Reset to default parameters _camera.Position = Vector3.ZERO; _camera.Orientation = Quaternion.IDENTITY; // ... and attach the Ogre camera to the camera node _cameraNode.AttachObject(_camera); _cameraModes = new Dictionary<string, CameraMode>(); }
/// <summary> /// Adds to listeners one instance of each type implementing CodeElementListener interface /// and defined in namespace TypeCobol.Compiler.Diagnostics. /// TODO: the list of namespace where CodeElementListeners are searched for should not be hard-coded /// </summary> internal void CreateListeners() { if (_listeners == null) { _listeners = new List <NodeListener <TCtx> >(); var namespaces = new[] { "TypeCobol.Compiler.Diagnostics", }; var assembly = Assembly.GetExecutingAssembly(); foreach (var names in namespaces) { var instances = Reflection.GetInstances <NodeListener <TCtx> >(assembly, names); foreach (var checker in instances) { _listeners.Add(checker); } } //Allocate listeners from static factories. if (StaticNodeListenerFactory != null) { lock (typeof(NodeDispatcher <TCtx>)) { foreach (NodeListenerFactory <TCtx> factory in StaticNodeListenerFactory) { NodeListener <TCtx> listener = factory(); if (listener != null) { _listeners.Add(listener); } } } } } }
public MainWindowViewModel() { WinMan = new WindowManager(); connector = new NodeConnector(AllNodes, new MockBlockChain(), new ClientSettings()); listener = new NodeListener(AllNodes, new MockBlockChain(), new ClientSettings()); listener.StartListen(new IPEndPoint(IPAddress.Any, testPortToUse)); }
public MainWindowViewModel() { AllNodes = new ObservableCollection <Node>(); tempNodex = new List <Node>(); var clientSettings = new ClientSettings(); WinMan = new WindowManager(); connector = new NodeConnector(tempNodex, new MockBlockChain(), clientSettings); listener = new NodeListener(new List <Node>(), new MockBlockChain(), clientSettings); listener.StartListen(new IPEndPoint(IPAddress.Any, testPortToUse)); }
/// <summary> /// Initializes a new instance of <see cref="FullClient"/> using the given parameters. /// </summary> /// <param name="settings">Client settings</param> public FullClient(IClientSettings settings) { Settings = settings; connector = new NodeConnector(settings.AllNodes, settings); if (settings.AcceptIncomingConnections) { listener = new NodeListener(settings.AllNodes, settings); } connector.ConnectFailureEvent += Connector_ConnectFailureEvent; Settings.Blockchain.HeaderSyncEndEvent += Blockchain_HeaderSyncEndEvent; Settings.Blockchain.BlockSyncEndEvent += Blockchain_BlockSyncEndEvent; settings.AllNodes.AddRemoveEvent += AllNodes_AddRemoveEvent; }
public CameraControlSystem(SceneManager sceneManager, string name, SceneNode customCameraSceneNode, bool reCalcOnTargetMoving = true) { _sceneMgr = sceneManager; _name = name; _targetNode = null; _targetNodeListener = null; _recalcOnTargetMoving = reCalcOnTargetMoving; _currentCameraMode = null; _cameraNode = _sceneMgr.RootSceneNode.CreateChildSceneNode(_name + "SceneNode"); _isOwnCamera = false; _cameraNode.AddChild(customCameraSceneNode); _cameraModes = new Dictionary <string, CameraMode>(); }
public CameraControlSystem(SceneManager sceneManager, string name, SceneNode customCameraSceneNode, bool reCalcOnTargetMoving = true) { _sceneMgr = sceneManager; _name = name; _targetNode = null; _targetNodeListener = null; _recalcOnTargetMoving = reCalcOnTargetMoving; _currentCameraMode = null; _cameraNode = _sceneMgr.RootSceneNode.CreateChildSceneNode(_name + "SceneNode"); _isOwnCamera = false; _cameraNode.AddChild(customCameraSceneNode); _cameraModes = new Dictionary<string, CameraMode>(); }
/** * Adds a listener to the list of node listeners. It is informed whenever a * node is expanded during search. */ public void addNodeListener(NodeListener listener) { nodeListeners.Add(listener); }