synthclone  0.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
samplerjob.h
Go to the documentation of this file.
1 /*
2  * libsynthclone - a plugin API for `synthclone`
3  * Copyright (C) 2011 Devin Anderson
4  *
5  * This library is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU Lesser General Public License as published by the
7  * Free Software Foundation; either version 2.1 of the License, or (at your
8  * option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful, but WITHOUT
11  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
13  * for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public License
16  * along with this library; if not, write to the Free Software Foundation,
17  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18  */
19 
20 #ifndef __SYNTHCLONE_SAMPLERJOB_H__
21 #define __SYNTHCLONE_SAMPLERJOB_H__
22 
23 #include <synthclone/zone.h>
24 
25 namespace synthclone {
26 
31  class SamplerJob: public QObject {
32 
33  Q_OBJECT
34 
35  public:
36 
41  enum Type {
45  };
46 
54  virtual Type
55  getType() const = 0;
56 
65  virtual const Zone *
66  getZone() const = 0;
67 
68  protected:
69 
79  explicit
80  SamplerJob(QObject *parent=0);
81 
87  virtual
88  ~SamplerJob();
89 
90  };
91 
92 }
93 
94 #endif