Files
oak-editor/app/node/factory.h
T
itsmattkc 7ad2eae7a2 implemented volume and pan effects
This commit implements a structure for sample processing and two implemenations
of this structure in volume and pan effects.
2019-12-24 12:34:30 +11:00

47 lines
732 B
C++

#ifndef NODEFACTORY_H
#define NODEFACTORY_H
#include <QList>
#include "node.h"
#include "widget/menu/menu.h"
class NodeFactory
{
public:
enum InternalID {
kViewerOutput,
kClipBlock,
kGapBlock,
kAudioInput,
kTransformDistort,
kVideoInput,
kTimelineOutput,
kTrackOutput,
kAudioVolume,
kAudioPanning,
// Count value
kInternalNodeCount
};
NodeFactory() = default;
static void Initialize();
static void Destroy();
static Menu* CreateMenu();
static Node* CreateFromMenuAction(QAction* action);
static Node* CreateFromID(const QString& id);
private:
static Node* CreateInternal(const InternalID& id);
static QList<Node*> library_;
};
#endif // NODEFACTORY_H