Loading...
Searching...
No Matches
MonteCarloJob.h
Go to the documentation of this file.
1/*
2** This file is part of eOn.
3**
4** SPDX-License-Identifier: BSD-3-Clause
5**
6** Copyright (c) 2010--present, eOn Development Team
7** All rights reserved.
8**
9** Repo:
10** https://github.com/TheochemUI/eOn
11*/
12#pragma once
13#include "EonLogger.h"
14
15#include "Job.h"
16#include "Parameters.h"
17
18namespace eonc {
19
20class MonteCarloJob : public Job {
21public:
22 MonteCarloJob(std::unique_ptr<Parameters> parameters, Runtime &rt)
23 : Job(std::move(parameters), rt) {}
24 ~MonteCarloJob(void) = default;
25 std::vector<std::string> run(void) override;
26
27private:
29};
30
31} // namespace eonc
The job class is used to serve as an abstract class for all jobs, as well as to call a job at runtime...
Job(std::unique_ptr< Parameters > parameters, Runtime &rt)
Borrow: caller keeps Runtime alive (CLI stack / Python Session).
Definition Job.h:76
eonc::log::Scoped log
~MonteCarloJob(void)=default
std::vector< std::string > run(void) override
Virtual run; used solely for dynamic dispatch.
MonteCarloJob(std::unique_ptr< Parameters > parameters, Runtime &rt)
Move-only composition root for process resources (dlopen loaders and the potential registry).
Definition Runtime.h:27
RAII resource manager for the ARTn C library with global synchronization.
RAII helper for class-scoped logging.
Definition EonLogger.h:171