joque
task orchestration library
records.hpp File Reference
#include "run_result.hpp"
#include "task.hpp"
#include <chrono>
#include <cstddef>
#include <functional>
#include <list>
#include <map>
#include <string>
#include <string_view>
#include <vector>
+ Include dependency graph for records.hpp:

Go to the source code of this file.

Classes

struct  joque::run_record
 Record storing information about a run of one task, produced during single execution once for each task. More...
 
struct  joque::exec_record
 Record of execution of entire task set. More...
 

Namespaces

 joque
 MIT License.
 

Typedefs

using joque::tp = std::chrono::time_point< std::chrono::system_clock >
 

Enumerations

enum class  joque::run_status : uint8_t {
  joque::OK ,
  joque::SKIP ,
  joque::DEPF ,
  joque::FAIL
}
 

Functions

std::string_view joque::to_sv (const run_status &s)
 
void joque::map (std::convertible_to< run_record > auto &rec, auto &&f)
 
std::chrono::seconds joque::runtime_sum (const exec_record &erec)
 
void joque::map (std::convertible_to< exec_record > auto &rec, auto &&f)
 

Class Documentation

◆ joque::run_record

struct joque::run_record

Record storing information about a run of one task, produced during single execution once for each task.

Note that this valid only as long as the input task set was not modified.

+ Collaboration diagram for joque::run_record:
Class Members
reference_wrapper< const task > t Executed task.
string name Full name of the task.
run_status status
int retcode Return code of the execution. Assumes that 0 means success.
tp start Start time of the execution.
tp end End time of the execution.
list< output_chunk > output

◆ joque::exec_record

struct joque::exec_record

Record of execution of entire task set.

Is valid only as long as the original task set was not modified.

+ Collaboration diagram for joque::exec_record:
Class Members
map< run_status, size_t > stats
size_t total_count Total number of jobs.
vector< run_record > runs Run record for each finished task in the set.