From f899ea2786e2ccf1b5765efd68c99273c9c056a9 Mon Sep 17 00:00:00 2001 From: Attila Molnar Date: Tue, 30 Aug 2016 16:01:47 +0200 Subject: [PATCH] Add const versions of ModeHandler::IsPrefixMode(), IsListModeBase() and IsParameterMode() --- include/mode.h | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/include/mode.h b/include/mode.h index 093822372..35af68685 100644 --- a/include/mode.h +++ b/include/mode.h @@ -184,6 +184,12 @@ class CoreExport ModeHandler : public ServiceProvider */ PrefixMode* IsPrefixMode(); + /** + * Check whether this mode is a prefix mode + * @return non-NULL if this mode is a prefix mode, NULL otherwise + */ + const PrefixMode* IsPrefixMode() const; + /** * Check whether this mode handler inherits from ListModeBase * @return non-NULL if this mode handler inherits from ListModeBase, NULL otherwise @@ -192,10 +198,22 @@ class CoreExport ModeHandler : public ServiceProvider /** * Check whether this mode handler inherits from ListModeBase + * @return non-NULL if this mode handler inherits from ListModeBase, NULL otherwise + */ + const ListModeBase* IsListModeBase() const; + + /** + * Check whether this mode handler inherits from ParamModeBase * @return non-NULL if this mode handler inherits from ParamModeBase, NULL otherwise */ ParamModeBase* IsParameterMode(); + /** + * Check whether this mode handler inherits from ParamModeBase + * @return non-NULL if this mode handler inherits from ParamModeBase, NULL otherwise + */ + const ParamModeBase* IsParameterMode() const; + /** * Returns the mode's type */ @@ -790,12 +808,27 @@ inline PrefixMode* ModeHandler::IsPrefixMode() return (this->type_id == MC_PREFIX ? static_cast(this) : NULL); } +inline const PrefixMode* ModeHandler::IsPrefixMode() const +{ + return (this->type_id == MC_PREFIX ? static_cast(this) : NULL); +} + inline ListModeBase* ModeHandler::IsListModeBase() { return (this->type_id == MC_LIST ? reinterpret_cast(this) : NULL); } +inline const ListModeBase* ModeHandler::IsListModeBase() const +{ + return (this->type_id == MC_LIST ? reinterpret_cast(this) : NULL); +} + inline ParamModeBase* ModeHandler::IsParameterMode() { return (this->type_id == MC_PARAM ? reinterpret_cast(this) : NULL); } + +inline const ParamModeBase* ModeHandler::IsParameterMode() const +{ + return (this->type_id == MC_PARAM ? reinterpret_cast(this) : NULL); +} -- 2.39.2