//===-- app/AppSystemImpl.cpp -----------------------------------*- C++ -*-===//
//
//                                 The RoSA Framework
//
// Distributed under the terms and conditions of the Boost Software License 1.0.
// See accompanying file LICENSE.
//
// If you did not receive a copy of the license file, see
// http://www.boost.org/LICENSE_1_0.txt.
//
//===----------------------------------------------------------------------===//
///
/// \file app/AppSystemImpl.cpp
///
/// \author David Juhasz (david.juhasz@tuwien.ac.at)
///
/// \date 2017-2020
///
/// \brief Implementation of app/AppSystemImpl.hpp.
///
//===----------------------------------------------------------------------===//

#include "AppSystemImpl.hpp"

namespace rosa {
namespace app {

AppSystemImpl::AppSystemImpl(const std::string &Name) noexcept
    : AppSystem(), MessagingSystemImpl(Name) {
  LOG_TRACE("System '" + Name + "' has application flavor");
}

bool AppSystemImpl::isAppSensor(const AgentHandle &H) const noexcept {
  return unwrapAgent(H).Kind == atoms::SensorKind;
}

bool AppSystemImpl::isAppAgent(const AgentHandle &H) const noexcept {
  return unwrapAgent(H).Kind == atoms::AgentKind;
}

} // End namespace app
} // End namespace rosa
