//===-- deluxe/DeluxeSystemImpl.cpp -----------------------------*- C++ -*-===//
//
//                                 The RoSA Framework
//
//===----------------------------------------------------------------------===//
///
/// \file deluxe/DeluxeSystemImpl.cpp
///
/// \author David Juhasz (david.juhasz@tuwien.ac.at)
///
/// \date 2017
///
/// \brief Implementation of deluxe/DeluxeSystemImpl.hpp.
///
//===----------------------------------------------------------------------===//

#include "DeluxeSystemImpl.hpp"

namespace rosa {
namespace deluxe {

DeluxeSystemImpl::DeluxeSystemImpl(const std::string &Name) noexcept
    : DeluxeSystem(),
      MessagingSystemImpl(Name) {
  LOG_TRACE("System '" + Name + "' has a deluxe flavor");
}

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

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

} // End namespace deluxe
} // End namespace rosa
