//public connector(string[] profiles) public connector() { //read config values _profiles = new string[] { _myConfig._profile1, _myConfig._profile2 }; _bcheckOnUndock = _myConfig._checkOnUndock; _bcheckOnResume = _myConfig._checkOnResume; _bswitchOnDisconnect = _myConfig._switchOnDisconnect; _iSwitchTimeout = _myConfig._switchTimeout; _benableLogging = _myConfig._enableLogging; #if DEBUG Logger.bEnableLogging = true; #else Logger.bEnableLogging = _benableLogging; #endif //_profiles = profiles; evtStopThreads.Reset(); // clear event OnConnectedMessage("connector initialized with profiles: "); try { _ssRACapi = new itc_ssapi(); } catch (Exception ex) { throw new NotSupportedException("RAC not active"); } //list profiles and disable all first, only one should be enabled foreach (string s in _profiles) { OnConnectedMessage("\t" + s); _ssRACapi.enableProfile(s, false); } _ssRACapi.enableProfile(_profiles[0], true); //enable primary profile _workThread = new Thread(new ThreadStart(myWorkerThread)); _workThread.Name = "myWorkerThread"; _workThread.Start(); _connectThread = new Thread(new ThreadStart(connectWatchThread)); _connectThread.Name = "connectWatchThread"; _connectThread.Start(); _timerThread = new Thread(new ThreadStart(timerThread)); _timerThread.Name = "timerThread"; _timerThread.Start(); _PowerSourceMessages = new PowerSourceChanges(); _PowerSourceMessages.powerChangedEvent += new PowerSourceChanges.powerChangeEventHandler(_powerSourceMessages_powerChangedEvent); _PowerMessages = new PowerMessages(); _PowerMessages.powerChangedEvent += new PowerMessages.powerChangeEventHandler(_PowerMessages_powerChangedEvent); }