started node factory class for making nodes at runtime
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
#ifndef NODEFACTORY_H
|
||||
#define NODEFACTORY_H
|
||||
|
||||
#include <QList>
|
||||
|
||||
#include "node.h"
|
||||
#include "widget/menu/menu.h"
|
||||
|
||||
class NodeFactory
|
||||
{
|
||||
public:
|
||||
enum InternalID {
|
||||
kAlphaOverBlend,
|
||||
kClipBlock,
|
||||
kGapBlock,
|
||||
kTransitionBlock,
|
||||
kOpacity,
|
||||
kTransformDistort,
|
||||
kSolidGenerator,
|
||||
kVideoInput,
|
||||
kAudioInput,
|
||||
kTimelineOutput,
|
||||
kTrackOutput,
|
||||
kViewerOutput,
|
||||
|
||||
// Count value
|
||||
kInternalNodeCount
|
||||
};
|
||||
|
||||
NodeFactory() = default;
|
||||
|
||||
static void Initialize();
|
||||
|
||||
static void Destroy();
|
||||
|
||||
static void Create(const Entry& create_info);
|
||||
|
||||
static Menu* CreateMenu();
|
||||
|
||||
private:
|
||||
static Node* CreateInternal(const InternalID& id);
|
||||
|
||||
static QList<Node*> library_;
|
||||
};
|
||||
|
||||
#endif // NODEFACTORY_H
|
||||
Reference in New Issue
Block a user