[ Doxygen ] Improved Param Group Subgroup Methods (#19546)

This commit is contained in:
ᴩʜᴏɴᴇᴅʀᴏɪᴅ
2025-02-17 12:24:05 -05:00
committed by GitHub
parent 8b8e29a032
commit 82b5ce2d10

View File

@@ -131,27 +131,67 @@ public:
/** @name methods for group handling */
//@{
/// get a handle to a sub group or create one
/**
* Returns or creates a sub-group with the given name.
*
* @param[in] Name Name of the sub-group.
* @returns A handle to the sub-group.
*/
Base::Reference<ParameterGrp> GetGroup(const char* Name);
/// get a vector of all sub groups in this group
/**
* Returns all sub-groups.
*
* @returns A vector of handles to the sub-groups.
*/
std::vector<Base::Reference<ParameterGrp>> GetGroups();
/// test if this group is empty
/**
* Tests if this group is empty.
*/
bool IsEmpty() const;
/// test if a special sub group is in this group
/**
* Tests if a sub-group exists.
*
* @param[in] Name Name of the sub-group.
*/
bool HasGroup(const char* Name) const;
/// type of the handle
using handle = Base::Reference<ParameterGrp>;
/// remove a sub group from this group
/**
* Removes a sub-group.
*
* @param[in] Name Name of the sub-group.
*/
void RemoveGrp(const char* Name);
/// rename a sub group from this group
/**
* Renames a sub-group.
*
* @param[in] OldName The current name of the sub-group.
* @param[in] NewName The new name the sub-group will have.
* @returns Whether or not the renaming succeeded.
*
* @note Does nothing if a sub-group with the new name already exists.
*/
bool RenameGrp(const char* OldName, const char* NewName);
/// clears everything in this group (all types)
/// @param notify: whether to notify on deleted parameters using the Observer interface.
/**
* Empties this group.
*
* @param[in] notify Whether to notify on deleted parameters using the Observer interface.
*/
void Clear(bool notify = false);
//@}
/** @name methods for generic attribute handling */
//@{
enum class ParamType
{
FCInvalid = 0,