diff options
author | Kenji Hosokawa <khosokawa@jp.adit-jv.com> | 2020-08-24 21:58:42 +0900 |
---|---|---|
committer | Kenji Hosokawa <khosokawa@jp.adit-jv.com> | 2020-08-24 21:58:42 +0900 |
commit | 2b4ae7fde370bc3316ab30cc38b74d23e785b360 (patch) | |
tree | 41b6eb70b3419c2fbd192ed133c5890a985eddec /src/core/model/RBAContentState.cpp | |
parent | 6694a4d2952ebd171564932200cac00d6e5792f4 (diff) |
First commitjellyfish_9.99.4jellyfish/9.99.49.99.4
Signed-off-by: Kenji Hosokawa <khosokawa@jp.adit-jv.com>
Change-Id: I381abb0a6521f5349768a76ef7ceecbce4b2d701
Diffstat (limited to 'src/core/model/RBAContentState.cpp')
-rw-r--r-- | src/core/model/RBAContentState.cpp | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/src/core/model/RBAContentState.cpp b/src/core/model/RBAContentState.cpp new file mode 100644 index 0000000..f149129 --- /dev/null +++ b/src/core/model/RBAContentState.cpp @@ -0,0 +1,133 @@ +/** + * Copyright (c) 2019 DENSO CORPORATION. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +] +/** + * ContentState class + */ + +#include <string> + +#include "RBAViewContentState.hpp" +#include "RBAContent.hpp" +#include "RBAContentState.hpp" + +namespace rba +{ + +RBAContentState::RBAContentState(const std::string& name) + : RBARuleObject{name} +{ +} + +void +RBAContentState::clearStatus() +{ + order_ = 0; +} + +bool +RBAContentState::isViewContentState() const +{ + return false; +} + +bool +RBAContentState::isSoundContentState() const +{ + return false; +} + +std::string +RBAContentState::getUniqueName() const +{ + return getOwner()->getElementName() + RBAViewContentState::CONTEXT_SEPARATER + getElementName(); +} + +std::int32_t +RBAContentState::getContentStatePriority() const +{ + return priority_; +} + +void +RBAContentState::setPriority(const std::int32_t newPriority) +{ + priority_ = newPriority; +} + +std::int32_t +RBAContentState::getContentStateOrder() const +{ + return order_; +} + +void +RBAContentState::setOrder(const std::int32_t newOrder) +{ + order_ = newOrder; +} + +bool +RBAContentState::compareFirstComeFirst(const RBAContentState* const lhs, + const RBAContentState* const rhs) +{ + return lhs->getContentStateOrder() < rhs->getContentStateOrder(); +} + +bool +RBAContentState::compareLastComeFirst(const RBAContentState* const lhs, + const RBAContentState* const rhs) +{ + return lhs->getContentStateOrder() > rhs->getContentStateOrder(); +} + +bool +RBAContentState::comparePriorityFirstComeFirst(const RBAContentState* const lhs, + const RBAContentState* const rhs) +{ + if(lhs->getContentStatePriority() == rhs->getContentStatePriority()) { + return compareFirstComeFirst(lhs, rhs); + } + else { + return lhs->getContentStatePriority() > rhs->getContentStatePriority(); + } +} + +bool +RBAContentState::comparePriorityLastComeFirst(const RBAContentState* const lhs, + const RBAContentState* const rhs) +{ + if(lhs->getContentStatePriority() == rhs->getContentStatePriority()) { + return compareLastComeFirst(lhs, rhs); + } + else { + return lhs->getContentStatePriority() > rhs->getContentStatePriority(); + } +} + +const std::string +RBAContentState::getPriorityString() const +{ + return std::to_string(priority_); +} + +const std::string +RBAContentState::getOrderString() const +{ + return std::to_string(order_); +} + +} |