2022-05-21 06:04:08 -04:00
|
|
|
#pragma once
|
|
|
|
|
2022-11-11 11:00:34 -05:00
|
|
|
enum class component_priority
|
|
|
|
{
|
|
|
|
min = 0,
|
|
|
|
// must run after the updater
|
|
|
|
steam_proxy,
|
|
|
|
updater,
|
|
|
|
// must have the highest priority
|
|
|
|
arxan,
|
|
|
|
};
|
|
|
|
|
2022-05-21 06:04:08 -04:00
|
|
|
class component_interface
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
virtual ~component_interface() = default;
|
|
|
|
|
2022-11-09 14:19:08 -05:00
|
|
|
virtual void post_load()
|
2022-05-21 06:04:08 -04:00
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
virtual void pre_destroy()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
virtual void post_unpack()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
2022-11-11 11:00:34 -05:00
|
|
|
virtual component_priority priority() const
|
2022-06-16 06:12:36 -04:00
|
|
|
{
|
2022-11-11 11:00:34 -05:00
|
|
|
return component_priority::min;
|
2022-06-16 06:12:36 -04:00
|
|
|
}
|
2022-05-21 06:04:08 -04:00
|
|
|
};
|