aboutsummaryrefslogtreecommitdiffstats
path: root/include/rba/RBASoundContentState.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/rba/RBASoundContentState.hpp')
-rw-r--r--include/rba/RBASoundContentState.hpp119
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