Chris@320: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ Chris@320: Chris@320: /* Chris@320: Sonic Visualiser Chris@320: An audio file viewer and annotation editor. Chris@320: Centre for Digital Music, Queen Mary, University of London. Chris@320: Chris@320: This program is free software; you can redistribute it and/or Chris@320: modify it under the terms of the GNU General Public License as Chris@320: published by the Free Software Foundation; either version 2 of the Chris@320: License, or (at your option) any later version. See the file Chris@320: COPYING included with this distribution for more information. Chris@320: */ Chris@320: Chris@320: /* Chris@320: This is a modified version of a source file from the Chris@320: Rosegarden MIDI and audio sequencer and notation editor. Chris@320: This file copyright 2000-2006 Chris Cannam. Chris@320: */ Chris@320: Chris@1581: #ifndef SV_OSC_MESSAGE_H Chris@1581: #define SV_OSC_MESSAGE_H Chris@320: Chris@320: #include Chris@320: #include Chris@320: Chris@320: #include Chris@320: #include Chris@320: Chris@686: #include "base/Debug.h" Chris@686: Chris@320: class OSCMessage Chris@320: { Chris@320: public: Chris@972: OSCMessage() : m_target(0), m_targetData(0) { } Chris@320: ~OSCMessage(); Chris@320: Chris@320: void setTarget(const int &target) { m_target = target; } Chris@320: int getTarget() const { return m_target; } Chris@320: Chris@320: void setTargetData(const int &targetData) { m_targetData = targetData; } Chris@320: int getTargetData() const { return m_targetData; } Chris@320: Chris@320: void setMethod(QString method) { m_method = method; } Chris@320: QString getMethod() const { return m_method; } Chris@320: Chris@320: void clearArgs(); Chris@320: void addArg(QVariant arg); Chris@320: Chris@929: int getArgCount() const; Chris@929: const QVariant &getArg(int i) const; Chris@320: Chris@1665: // For debugging purposes, not for interchange Chris@1665: QString toString() const { Chris@1665: QString s = QString("[%1][%2] %3") Chris@1665: .arg(m_target) Chris@1665: .arg(m_targetData) Chris@1665: .arg(m_method); Chris@1665: for (auto a: m_args) { Chris@1665: s.push_back(" \"" + a.toString() + "\""); Chris@1665: } Chris@1665: return s; Chris@1665: } Chris@1665: Chris@320: private: Chris@320: int m_target; Chris@320: int m_targetData; Chris@320: QString m_method; Chris@320: std::vector m_args; Chris@320: }; Chris@320: Chris@320: #endif