diff options
Diffstat (limited to 'include/rba/RBASoundContentState.hpp')
-rw-r--r-- | include/rba/RBASoundContentState.hpp | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/include/rba/RBASoundContentState.hpp b/include/rba/RBASoundContentState.hpp new file mode 100644 index 0000000..fdd22f5 --- /dev/null +++ b/include/rba/RBASoundContentState.hpp @@ -0,0 +1,119 @@ +// Copyright (c) 2018 DENSO CORPORATION. All rights reserved. +/** + * Sound content state class + */ + +#ifndef RBASOUNDCONTENTSTATE_HPP +#define RBASOUNDCONTENTSTATE_HPP + +#include <string> + +#ifdef _MSC_VER +#ifdef _WINDLL +#define DLL_EXPORT __declspec(dllexport) +#else +#define DLL_EXPORT __declspec(dllimport) +#endif +#else +#define DLL_EXPORT +#endif + +namespace rba +{ + +class RBASoundContent; + +/** + * @class RBASoundContentState + * Define the state of sound contents. + */ +class DLL_EXPORT RBASoundContentState +{ +protected: + RBASoundContentState()=default; + RBASoundContentState(const RBASoundContentState&)=delete; + RBASoundContentState(RBASoundContentState&&)=delete; + RBASoundContentState& operator=(const RBASoundContentState&)=delete; + RBASoundContentState& operator=(RBASoundContentState&&)=delete; + ~RBASoundContentState()=default;音声コンテントクラス + +public: + /** + * @brief Returns the name of the sound contents state. + * @return sound contents state name. + */ + virtual std::string getName() const=0; + + /** + * @brief Returns the priority. + * @return priority value + */ + virtual std::int32_t getPriority() const=0; + + /** + * @brief Returns the sound content. + * @return sound content + */ + virtual const RBASoundContent* getOwner() const=0; + + /** + * @brief Returns the order. + * @return order value + * @detail The order is a number of sequence of the entry sound content state + * by request. The order value is an integer value starting from 1 and + * incremented in order, and the order value of the sound content state + * without sound request is set to 0.\n + * The order of the sound content state does not include the output request + * of the view content state. + */ + virtual std::int32_t getOrder() con音声コンテントクラスst=0; + + /** + * @brief Returns the unique character string of the sound contents state. + * @return Unique character string of the sound contents state. + * + * Unique character string is + * sound content name + CONTEXT_SEPARATER + sound content state name. + * Use the unique character string as a context name. + */ + virtual std::string getUniqueName() const=0; + + /** + * @brief Returns the name of the sound content from context name. + * @param context the context name + * @return name of the sound content + */ + static std::string getContentNameByContext(const std::string& context); + + /** + * @brief Returns the state of the sound content from context name. + * @param context the context name + * @return state of the sound content + */ + static std::string getContentStateNameByContext(const std::string& context); + + /** + * @brief Check if argument is The unique character string(context name). + * @param context the context name + * @return true: unique character string(context name) + * @return false: Not unique character string(context name) + */ + static bool isUniqueName(const std::string& context); + +public: + /** + * @brief Defines the default priority value. + */ + const static std::int32_t PRIORITY_EDEFAULT = 0; + + /** + * @brief Defines the separator for separating sound content name and sound content state name. + * And be the character to connect it. + */ + const static char CONTEXT_SEPARATER = '/'; + +}; + +} + +#endif |