Skip to content

Commit dcf9fdc

Browse files
committed
Update doxygen in api.h
1 parent bafdc6e commit dcf9fdc

2 files changed

Lines changed: 445 additions & 306 deletions

File tree

include/buttoncombo/ButtonCombo.h

Lines changed: 60 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,55 +3,108 @@
33
#ifdef __cplusplus
44

55
#include "defines.h"
6-
76
#include <optional>
87

98
namespace ButtonComboModule {
9+
10+
/**
11+
* @class ButtonCombo
12+
* @brief RAII Wrapper for a ButtonComboModule handle.
13+
*
14+
* Manages a single button combo. The combo is automatically unregistered via
15+
* @ref ButtonComboModule_RemoveButtonCombo when this object is destroyed.
16+
*/
1017
class ButtonCombo {
1118
public:
19+
/**
20+
* @brief Internal factory. Use `ButtonComboModule::Create...` instead.
21+
*/
1222
static std::optional<ButtonCombo> Create(const ButtonComboModule_ComboOptions &options,
1323
ButtonComboModule_ComboStatus &outStatus,
1424
ButtonComboModule_Error &outError) noexcept;
15-
25+
/**
26+
* @brief Internal factory (Throwing).
27+
*/
1628
static ButtonCombo Create(const ButtonComboModule_ComboOptions &options,
1729
ButtonComboModule_ComboStatus &outStatus);
1830

31+
/**
32+
* @brief Destructor. Calls @ref ButtonComboModule_RemoveButtonCombo.
33+
*/
1934
~ButtonCombo();
20-
ButtonCombo(const ButtonCombo &) = delete;
2135

36+
// Movable, not copyable
37+
ButtonCombo(const ButtonCombo &) = delete;
2238
ButtonCombo(ButtonCombo &&src) noexcept;
23-
2439
ButtonCombo &operator=(const ButtonCombo &) = delete;
25-
2640
ButtonCombo &operator=(ButtonCombo &&src) noexcept;
2741

42+
/**
43+
* @brief Returns the underlying C handle.
44+
*/
2845
[[nodiscard]] ButtonComboModule_ComboHandle getHandle() const;
2946

47+
/**
48+
* @brief Retrieves status.
49+
* @sa ButtonComboModule_GetButtonComboStatus
50+
*/
3051
ButtonComboModule_Error GetButtonComboStatus(ButtonComboModule_ComboStatus &outStatus) const;
3152

53+
/**
54+
* @brief Updates the label/metadata.
55+
* @sa ButtonComboModule_UpdateButtonComboMeta
56+
*/
3257
[[nodiscard]] ButtonComboModule_Error UpdateButtonComboMeta(const ButtonComboModule_MetaOptions &metaOptions) const;
3358

59+
/**
60+
* @brief Updates the callback function.
61+
* @sa ButtonComboModule_UpdateButtonComboCallback
62+
*/
3463
[[nodiscard]] ButtonComboModule_Error UpdateButtonComboCallback(const ButtonComboModule_CallbackOptions &callbackOptions) const;
3564

65+
/**
66+
* @brief Updates the controller mask and re-checks conflicts.
67+
* @details See @ref ButtonComboModule_UpdateControllerMask for details on how this affects combo status.
68+
* @sa ButtonComboModule_UpdateControllerMask
69+
*/
3670
[[nodiscard]] ButtonComboModule_Error UpdateControllerMask(ButtonComboModule_ControllerTypes controllerMask,
3771
ButtonComboModule_ComboStatus &outStatus) const;
3872

73+
/**
74+
* @brief Updates the button combination and re-checks conflicts.
75+
* @details See @ref ButtonComboModule_UpdateButtonCombo for details on how this affects combo status.
76+
* @sa ButtonComboModule_UpdateButtonCombo
77+
*/
3978
[[nodiscard]] ButtonComboModule_Error UpdateButtonCombo(ButtonComboModule_Buttons combo,
4079
ButtonComboModule_ComboStatus &outStatus) const;
4180

81+
/**
82+
* @brief Updates the hold duration (Hold combos only).
83+
* @sa ButtonComboModule_UpdateHoldDuration
84+
*/
4285
[[nodiscard]] ButtonComboModule_Error UpdateHoldDuration(uint32_t holdDurationInFrames) const;
4386

87+
/**
88+
* @brief Retrieves metadata.
89+
* @sa ButtonComboModule_GetButtonComboMeta
90+
*/
4491
[[nodiscard]] ButtonComboModule_Error GetButtonComboMeta(ButtonComboModule_MetaOptionsOut &outOptions) const;
4592

93+
/**
94+
* @brief Retrieves callback options.
95+
* @sa ButtonComboModule_GetButtonComboCallback
96+
*/
4697
ButtonComboModule_Error GetButtonComboCallback(ButtonComboModule_CallbackOptions &outOptions) const;
4798

99+
/**
100+
* @brief Retrieves detailed combo info.
101+
* @sa ButtonComboModule_GetButtonComboInfoEx
102+
*/
48103
ButtonComboModule_Error GetButtonComboInfoEx(ButtonComboModule_ButtonComboInfoEx &outOptions) const;
49104

50105
private:
51106
void ReleaseButtonComboHandle();
52-
53107
explicit ButtonCombo(ButtonComboModule_ComboHandle handle);
54-
55108
ButtonComboModule_ComboHandle mHandle = ButtonComboModule_ComboHandle(nullptr);
56109
};
57110
} // namespace ButtonComboModule

0 commit comments

Comments
 (0)