MotorControlModuleSDFM_TMS3.../Projects/EFC_Application/UMLibrary/configuration/software/AppBuilderRobust.hh

47 lines
1.4 KiB
C++

/*
* AppBuilderRobust.hh
*
* Created on: 9 ñåíò. 2020 ã.
* Author: LeonidTitov
*/
#ifndef UMLIBRARY_CONFIGURATION_SOFTWARE_APPBUILDERROBUST_HH_
#define UMLIBRARY_CONFIGURATION_SOFTWARE_APPBUILDERROBUST_HH_
#include "AppBuilder.hh"
#include "../../systemic/SystemException.hh"
namespace configuration { namespace software {
class AppBuilderRobust : public AppBuilder {
public:
AppBuilderRobust( BuildedItem * items, std::size_t items_size,
Environment & env ) : AppBuilder( items, items_size, env ) {}
struct AppBuilderException : public systemic::SystemException {
static const std::size_t self_id = 0x0AA0;
std::size_t id() const noexcept;
std::pair<const char *, std::size_t> binary() const noexcept;
const char * what() const noexcept;
static const std::size_t description_size = 64;
static char description[description_size];
static const std::size_t data_size = 64;
static char data[data_size];
};
protected:
virtual bool do_input( Environment & env, application::ISetupStep * & ) override;
virtual bool do_prepare( application::ISetupStep * & ) override;
virtual bool do_build( Environment & env, application::ISetupStep * & ) override;
virtual bool do_end( Environment & env, application::ISetupStep * & ) override;
};
}}
#endif /* UMLIBRARY_CONFIGURATION_SOFTWARE_APPBUILDERROBUST_HH_ */