35 lines
734 B
C++
35 lines
734 B
C++
#ifndef CONTEXTMANAGER_H
|
|
#define CONTEXTMANAGER_H
|
|
|
|
#include <QDebug>
|
|
|
|
#include "DoricExport.h"
|
|
|
|
#include "DoricContext.h"
|
|
|
|
class DORIC_EXPORT DoricContextManager {
|
|
private:
|
|
static DoricContextManager *local_instance;
|
|
DoricContextManager() {}
|
|
|
|
~DoricContextManager() {}
|
|
|
|
QAtomicInt *counter = new QAtomicInt();
|
|
QMap<QString, DoricContext *> *contextMap =
|
|
new QMap<QString, DoricContext *>();
|
|
|
|
public:
|
|
static DoricContextManager *getInstance() {
|
|
static DoricContextManager instance;
|
|
return &instance;
|
|
}
|
|
|
|
DoricContext *createContext(QString script, QString source, QString extra);
|
|
|
|
DoricContext *getContext(QString contextId);
|
|
|
|
void destroyContext(DoricContext *context);
|
|
};
|
|
|
|
#endif // CONTEXTMANAGER_H
|