126 "Destructing a non-terminated camp. Camp Resource category is: \"{}\"",
ResourceCategory )
190 "Double setting or removing a camp's configuration instance.\n"
191 "Note: A custom configuration must be set before camp initialization." )
216 "Double setting or removing a camp's resource pool instance.\n"
217 "Note: A custom resource pool must be set before camp initialization." )
219 ResourceHolder::resourcePool = pResourcePool;
263template<
typename TEnum>
304 var.Declare( name, typeName, defaultValue );
329template<
typename TEnum>
349template<
typename TEnum>
350requires std::is_enum_v<TEnum>
#define ALIB_ASSERT_WARNING(cond, domain,...)
#define ALIB_LOCK_WITH(lock)
BootstrapPhases GetBootstrapState()
SharedConfiguration config
void operator=(const Camp &)=delete
Deleted copy assignment.
Camp(const Camp &)=delete
Deleted copy constructor.
void BootstrapSetPhase(BootstrapPhases phase)
SharedConfiguration & GetConfig()
virtual ~Camp()
Virtual destructor to satisfy C++ abstract type rules.
virtual void Shutdown(ShutdownPhases phase)=0
Camp(Camp &&)=delete
Deleted move constructor.
virtual void Bootstrap()=0
void BootstrapSetConfig(const SharedConfiguration &pConfig)
void BootstrapSetResourcePool(const SPResourcePool &pResourcePool)
Camp(const NCString &resourceCategory)
NCString ResourceCategory
SPResourcePool resourcePool
Shared pointer to the resource pool.
ResourceHolder(const NCString &resourceCategory=nullptr)
SharedPtr< resources::ResourcePool, MonoAllocator > SPResourcePool
static const Declaration * Get(TEnum element)
void Bootstrap(camp::Camp &camp, const NString &name, character innerDelim=',', character outerDelim=',')
variables::Variable CampVariable(camp::Camp &camp)
strings::TString< nchar > NString
Type alias in namespace alib.
constexpr String NULL_STRING
A nulled string of the default character type.
strings::TCString< nchar > NCString
Type alias in namespace alib.
@ Final
The final initialization phase. Here, camps are initializing their custom setup.
ShutdownPhases
Termination levels usable with #"alib_mod_bs_camps;Bootstrapping ALib Camps".
@ Destruct
The main phase of termination that destructs everything.
boxing::Box Box
Type alias in namespace alib.
variables::TSharedConfiguration< SharedLock > SharedConfiguration
Type alias in namespace alib.
strings::TString< character > String
Type alias in namespace alib.
characters::character character
Type alias in namespace alib.
boxing::Enum Enum
Type alias in namespace alib.