Added controller helper funcs
This commit is contained in:
		
				
					committed by
					
						
						Zach Hilman
					
				
			
			
				
	
			
			
			
						parent
						
							a69b9d73f5
						
					
				
				
					commit
					362b28d052
				
			@@ -712,6 +712,37 @@ void Controller_NPad::SetVibrationEnabled(bool can_vibrate) {
 | 
				
			|||||||
    can_controllers_vibrate = can_vibrate;
 | 
					    can_controllers_vibrate = can_vibrate;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void Controller_NPad::ClearAllConnectedControllers() {
 | 
				
			||||||
 | 
					    std::for_each(connected_controllers.begin(), connected_controllers.end(),
 | 
				
			||||||
 | 
					                  [](ControllerHolder& controller) {
 | 
				
			||||||
 | 
					                      if (controller.is_connected && controller.type != NPadControllerType::None) {
 | 
				
			||||||
 | 
					                          controller.type = NPadControllerType::None;
 | 
				
			||||||
 | 
					                          controller.is_connected = false;
 | 
				
			||||||
 | 
					                      }
 | 
				
			||||||
 | 
					                  });
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					void Controller_NPad::DisconnectAllConnectedControllers() {
 | 
				
			||||||
 | 
					    std::for_each(connected_controllers.begin(), connected_controllers.end(),
 | 
				
			||||||
 | 
					                  [](ControllerHolder& controller) { controller.is_connected = false; });
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void Controller_NPad::ConnectAllDisconnectedControllers() {
 | 
				
			||||||
 | 
					    std::for_each(connected_controllers.begin(), connected_controllers.end(),
 | 
				
			||||||
 | 
					                  [](ControllerHolder& controller) {
 | 
				
			||||||
 | 
					                      if (controller.type != NPadControllerType::None && !controller.is_connected) {
 | 
				
			||||||
 | 
					                          controller.is_connected = false;
 | 
				
			||||||
 | 
					                      }
 | 
				
			||||||
 | 
					                  });
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void Controller_NPad::ClearAllControllers() {
 | 
				
			||||||
 | 
					    std::for_each(connected_controllers.begin(), connected_controllers.end(),
 | 
				
			||||||
 | 
					                  [](ControllerHolder& controller) {
 | 
				
			||||||
 | 
					                      controller.type = NPadControllerType::None;
 | 
				
			||||||
 | 
					                      controller.is_connected = false;
 | 
				
			||||||
 | 
					                  });
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool Controller_NPad::IsControllerSupported(NPadControllerType controller) const {
 | 
					bool Controller_NPad::IsControllerSupported(NPadControllerType controller) const {
 | 
				
			||||||
    const bool support_handheld =
 | 
					    const bool support_handheld =
 | 
				
			||||||
        std::find(supported_npad_id_types.begin(), supported_npad_id_types.end(), NPAD_HANDHELD) !=
 | 
					        std::find(supported_npad_id_types.begin(), supported_npad_id_types.end(), NPAD_HANDHELD) !=
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -113,6 +113,10 @@ public:
 | 
				
			|||||||
    void DisconnectNPad(u32 npad_id);
 | 
					    void DisconnectNPad(u32 npad_id);
 | 
				
			||||||
    LedPattern GetLedPattern(u32 npad_id);
 | 
					    LedPattern GetLedPattern(u32 npad_id);
 | 
				
			||||||
    void SetVibrationEnabled(bool can_vibrate);
 | 
					    void SetVibrationEnabled(bool can_vibrate);
 | 
				
			||||||
 | 
					    void ClearAllConnectedControllers();
 | 
				
			||||||
 | 
					    void DisconnectAllConnectedControllers();
 | 
				
			||||||
 | 
					    void ConnectAllDisconnectedControllers();
 | 
				
			||||||
 | 
					    void ClearAllControllers();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
private:
 | 
					private:
 | 
				
			||||||
    struct CommonHeader {
 | 
					    struct CommonHeader {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user