#include "qsacnuniverse.h" /** * @brief QSacnUniverse::QSacnUniverse * @param parent * @param universe */ QSacnUniverse::QSacnUniverse(QObject *parent, sACN::Universe *universe) : QObject(parent) , universe_(universe) { universe_->onData(std::bind(&QSacnUniverse::dataChangedNotifier, this, std::placeholders::_1)); }; /** * @brief QSacnUniverse::description * @return */ const QString QSacnUniverse::description() const { auto metadata = universe_->provenance(); if (!metadata) return QString(); return QString::fromUtf8(metadata->source_name.c_str()); } /** * @brief QSacnUniverse::number * @return */ uint16_t QSacnUniverse::number() const { auto metadata = universe_->provenance(); if (!metadata) return 0; return metadata->universe; } /** * @brief QSacnUniverse::priority * @return */ uint8_t QSacnUniverse::priority() const { auto metadata = universe_->provenance(); if (!metadata) return 0; return metadata->priority; } /** * @brief QSacnUniverse::rxRate * @return */ double QSacnUniverse::rxRate() const { return universe_->rxRate(); } /** * @brief QSacnUniverse::slot * @param slot * @return */ uint8_t QSacnUniverse::slot(const u_int16_t slot) const { return universe_->slot(slot); } /** * @brief QSacnUniverse::isEditable * @return */ bool QSacnUniverse::isEditable() const { return (universe_->isEditable()); } /** * @brief QSacnUniverse::activeSlots * @return */ uint16_t QSacnUniverse::activeSlots() const { return universe_->activeSlots(); } /** * @brief QSacnUniverse::setDescription * @param desc */ void QSacnUniverse::setDescription(std::string desc) { universe_->provenance()->source_name = desc; } /** * @brief QSacnUniverse::setOptions * @param o */ void QSacnUniverse::setOptions(sACN::DATA::data_options o) { universe_->provenance()->options = o; } /** * @brief QSacnUniverse::setPriority * @param p */ void QSacnUniverse::setPriority(uint8_t p) { universe_->provenance()->priority = p; } /** * @brief QSacnUniverse::setSyncAddress * @param a */ void QSacnUniverse::setSyncAddress(uint16_t a) { universe_->provenance()->sync_address = a; } /** * @brief QSacnUniverse::setValue * @param addr * @param level */ void QSacnUniverse::setValue (const uint16_t addr, const uint8_t level) { universe_->sACN::Universe::setValue(addr, level); } /** * @brief QSacnUniverse::setValue * @param addr * @param size * @param profile */ void QSacnUniverse::setValue (const uint16_t addr, const uint16_t size, const uint8_t* profile) { universe_->sACN::Universe::setValue(addr, size, profile); } /** * @brief QSacnUniverse::dataChangedNotifier * @param universe */ void QSacnUniverse::dataChangedNotifier(DMX::Universe* universe) { Q_UNUSED(universe) emit changed(universe_); };