libultraship
Reimplementations of libultra (N64 SDK) functions for modern hardware
Loading...
Searching...
No Matches
AxisDirectionMappingFactory.h
Go to the documentation of this file.
1#pragma once
2
4#include <memory>
5#include <string>
6#include <vector>
7
8namespace Ship {
9class ConsoleVariable;
10class ControlDeck;
11class Window;
12
31 public:
42 static std::shared_ptr<ControllerAxisDirectionMapping>
43 CreateAxisDirectionMappingFromConfig(uint8_t portIndex, StickIndex stickIndex, std::string id,
44 std::shared_ptr<ConsoleVariable> consoleVariable,
45 std::shared_ptr<ControlDeck> controlDeck, std::shared_ptr<Window> window);
46
56 static std::vector<std::shared_ptr<ControllerAxisDirectionMapping>> CreateDefaultKeyboardAxisDirectionMappings(
57 uint8_t portIndex, StickIndex stickIndex, std::shared_ptr<ConsoleVariable> consoleVariable,
58 std::shared_ptr<ControlDeck> controlDeck, std::shared_ptr<Window> window);
59
68 static std::vector<std::shared_ptr<ControllerAxisDirectionMapping>>
70 std::shared_ptr<ConsoleVariable> consoleVariable,
71 std::shared_ptr<ControlDeck> controlDeck);
72
82 static std::shared_ptr<ControllerAxisDirectionMapping>
83 CreateAxisDirectionMappingFromSDLInput(uint8_t portIndex, StickIndex stickIndex, Direction direction,
84 std::shared_ptr<ConsoleVariable> consoleVariable,
85 std::shared_ptr<ControlDeck> controlDeck);
86
96 static std::shared_ptr<ControllerAxisDirectionMapping>
97 CreateAxisDirectionMappingFromMouseWheelInput(uint8_t portIndex, StickIndex stickIndex, Direction direction,
98 std::shared_ptr<ConsoleVariable> consoleVariable,
99 std::shared_ptr<ControlDeck> controlDeck);
100};
101} // namespace Ship
Factory for creating ControllerAxisDirectionMapping instances.
Definition AxisDirectionMappingFactory.h:30
static std::shared_ptr< ControllerAxisDirectionMapping > CreateAxisDirectionMappingFromMouseWheelInput(uint8_t portIndex, StickIndex stickIndex, Direction direction, std::shared_ptr< ConsoleVariable > consoleVariable, std::shared_ptr< ControlDeck > controlDeck)
Creates an axis-direction mapping from mouse wheel input for interactive binding.
static std::vector< std::shared_ptr< ControllerAxisDirectionMapping > > CreateDefaultKeyboardAxisDirectionMappings(uint8_t portIndex, StickIndex stickIndex, std::shared_ptr< ConsoleVariable > consoleVariable, std::shared_ptr< ControlDeck > controlDeck, std::shared_ptr< Window > window)
Creates default keyboard mappings for the given stick and direction.
static std::vector< std::shared_ptr< ControllerAxisDirectionMapping > > CreateDefaultSDLAxisDirectionMappings(uint8_t portIndex, StickIndex stickIndex, std::shared_ptr< ConsoleVariable > consoleVariable, std::shared_ptr< ControlDeck > controlDeck)
Creates default SDL mappings for the given stick.
static std::shared_ptr< ControllerAxisDirectionMapping > CreateAxisDirectionMappingFromConfig(uint8_t portIndex, StickIndex stickIndex, std::string id, std::shared_ptr< ConsoleVariable > consoleVariable, std::shared_ptr< ControlDeck > controlDeck, std::shared_ptr< Window > window)
Deserializes an axis-direction mapping from the configuration string.
static std::shared_ptr< ControllerAxisDirectionMapping > CreateAxisDirectionMappingFromSDLInput(uint8_t portIndex, StickIndex stickIndex, Direction direction, std::shared_ptr< ConsoleVariable > consoleVariable, std::shared_ptr< ControlDeck > controlDeck)
Creates an axis-direction mapping from live SDL input for interactive binding.
Core namespace for the libultraship engine framework.
Definition gfx_direct3d_common.h:14
Direction
Identifies the direction component of an axis mapping.
Definition ControllerAxisDirectionMapping.h:18
StickIndex
Identifies which analog stick an axis mapping applies to.
Definition ControllerAxisDirectionMapping.h:15