//Remark: Only start the DataHolder deviceHolder with this method, moving the storageFileHandler.readDevices() in the deviceHolder contructor will result in a JSON infinit recursion with RepositoryRepresentations private void initializeDevices(EnvironmentInfoHandler environmentHandler) { deviceHolder = new DeviceHolder(); deviceHolder.initializeDevices(); deviceHolder.updateAllRepos(); deviceHolder.change_PlugWise_Adress(_environmentHandler.getPWAdress()); }
public DeviceHolder() { devices = new List <Device>(); storageFileHandler = new DeviceStorageFileHandlerJSON(); deviceProducer = new Deviceproducer(); environmentHandler = new EnvironmentInfoHandler(); }
/// <summary> /// Constructor for the DataHolder /// <param name="devices">The devices for the DataHolder know at initialization</param> /// </summary> public DataHolder(EventLogger eventLogger) { _newDevices = new List <Device>(); _environmentHandler = new EnvironmentInfoHandler(); double roomWidth = _environmentHandler.getRoomWidht(); double roomHeight = _environmentHandler.getRoomHeight(); double roomDepth = _environmentHandler.getRoomDepth(); _roomModel = new Room(roomWidth, roomHeight, roomDepth); logger = eventLogger; initializeDevices(_environmentHandler); userHolder = new UserHolder(); }
/// <summary> /// Constructor for the IGS. /// Among other things it creates a concrete observer for HttpEven and KinectEvent. /// <param name="data">The Dataholder</param> /// <param name="tracker">The Usertracker</param> /// <param name="server">The HTTP server</param> /// </summary> public PointAndControlMain(DataHolder data, UserTracker tracker, HttpServer server, EventLogger eventLogger) { environmentHandler = new EnvironmentInfoHandler(); Data = data; Tracker = tracker; Server = server; Server.postRequest += server_Post_Request; Server.Request += server_Request; Tracker.KinectEvents += UserLeft; Tracker.Strategy.TrackingStateEvents += SwitchTrackingState; createIGSKinect(); json_paramReader = new JSON_ParameterReader(); this.Transformer = new CoordTransform(IGSKinect.tiltingDegree, IGSKinect.roomOrientation, IGSKinect.ball.Center); logger = eventLogger; this.coreMethods = new CollisionMethod(Data, Tracker, Transformer, logger); }