/** * @brief Clear all controllers (deletes them too) */ void ControllerManager::ClearControllers() { for(ControllerIT it = mControllers.begin(); it != mControllers.end(); ++it) { RemoveController(*it); } mControllers.clear(); }
void PIN_GameControllerManager::RemoveGameController(SDL_JoystickID deviceID) { SDL_GameController* ctrl = SDL_GameControllerFromInstanceID(deviceID - PIN_ID_JOYSTICK); if(ctrl != NULL) { SDL_GameControllerClose(ctrl); PIN_Number id = deviceID + PIN_ID_JOYSTICK; for(PIN_ControllerBaseList::iterator it = _controllerList.begin(); it != _controllerList.end();/*it++*/) { PIN_GameControllerEntry* entry = (PIN_GameControllerEntry*)*it; if(entry->ControllerID == id) { RemoveController(entry); break; } } } }
/** * @brief Delete Controller * @param aController */ void ControllerManager::DeleteController(Controller *aController) { RemoveController(aController); delete aController; }