24 lines
728 B
C++
24 lines
728 B
C++
#ifndef FESA_ANALYSIS_ANALYSIS_PROCEDURE_H_
|
|
#define FESA_ANALYSIS_ANALYSIS_PROCEDURE_H_
|
|
|
|
#include "fesa/analysis/prepared_analysis_outcome.h"
|
|
#include "fesa/core/status.h"
|
|
|
|
namespace fesa {
|
|
|
|
class Domain;
|
|
|
|
/// @brief Executes one prepared Domain without opening result files.
|
|
/// @note The Domain and injected adapters outlive Execute. Accepted histories
|
|
/// remain procedure-specific and are returned only after validation.
|
|
class AnalysisProcedure {
|
|
public:
|
|
virtual ~AnalysisProcedure() = default;
|
|
/// @brief Returns the original typed completed payload or first failure.
|
|
virtual Result<PreparedAnalysisOutcome> Execute(const Domain& domain) = 0;
|
|
};
|
|
|
|
} // namespace fesa
|
|
|
|
#endif // FESA_ANALYSIS_ANALYSIS_PROCEDURE_H_
|