31 lines
717 B
C++
31 lines
717 B
C++
#pragma once
|
|
|
|
#include "Component.h"
|
|
#include <map>
|
|
#include <QTimer>
|
|
#include <QList>
|
|
#include <QMap>
|
|
|
|
class MinecraftInstance;
|
|
using ComponentContainer = QList<ComponentPtr>;
|
|
using ComponentIndex = QMap<QString, ComponentPtr>;
|
|
|
|
struct PackProfileData
|
|
{
|
|
// the instance this belongs to
|
|
MinecraftInstance *m_instance;
|
|
|
|
// the launch profile (volatile, temporary thing created on demand)
|
|
std::shared_ptr<LaunchProfile> m_profile;
|
|
|
|
// persistent list of components and related machinery
|
|
ComponentContainer components;
|
|
ComponentIndex componentIndex;
|
|
bool dirty = false;
|
|
QTimer m_saveTimer;
|
|
Task::Ptr m_updateTask;
|
|
bool loaded = false;
|
|
bool interactionDisabled = true;
|
|
};
|
|
|