plebble
evidence_processor.h
Go to the documentation of this file.
1
/*
2
-------------------------------------------------------------------------------
3
PLEBBLE
4
-------------------------------------------------------------------------------
5
Copyright (C) 2019-2020 KATLAS Technology. (http://katlastechnology.com)
6
Copyright (C) 2017-2020 Marcos Mayorga. (mm@mm-studios.com)
7
8
This file is part of our Plebble(R) Platform.
9
10
The code below cannot be copied, used for any purpose other than the one
11
agreed and/or distributed without the express permission of
12
KATLAS Technology.
13
-------------------------------------------------------------------------------
14
15
16
*/
17
18
#ifndef USGOV_e77c79537cdfb20cdea3f467a071e949c74e12350c287dc0aad2470af4059495
19
#define USGOV_e77c79537cdfb20cdea3f467a071e949c74e12350c287dc0aad2470af4059495
20
21
#include <
us/gov/config.h
>
22
#include <
us/gov/bgtask.h
>
23
#include "
calendar.h
"
24
25
namespace
us
{
namespace
gov {
26
namespace
engine {
27
using namespace
std
;
28
29
struct
evidence_processor
:
bgtask
{
30
typedef
bgtask
t
;
31
32
evidence_processor
();
33
~evidence_processor
();
34
void
process_evidences
(uint64_t maxts);
35
void
run
();
36
void
wait
();
37
void
wait_new_cycle
();
38
void
onwakeup
();
39
virtual
void
on_block_closure
(uint64_t)=0;
40
virtual
void
exec_evidence
(
const
evidence
&)=0;
41
virtual
bool
ready_for_block_opening
(uint64_t)
const
=0;
42
43
calendar_t
calendar
;
44
private
:
45
mutable
condition_variable
cv
;
46
47
#if CFG_LOGS==1
48
public
:
49
string
logdir;
50
#endif
51
};
52
53
}
54
}}
55
56
#endif
57
58
59
us::gov::engine::evidence_processor::exec_evidence
virtual void exec_evidence(const evidence &)=0
us::gov::engine::evidence_processor::on_block_closure
virtual void on_block_closure(uint64_t)=0
us::gov::engine::evidence_processor::evidence_processor
evidence_processor()
us::gov::engine::evidence_processor::run
void run()
us::gov::engine::evidence_processor::~evidence_processor
~evidence_processor()
bgtask.h
us::gov::engine::evidence_processor::cv
condition_variable cv
Definition:
evidence_processor.h:45
log_start
#define log_start
Definition:
gov.h:85
us
Definition:
daemon.h:22
c
us::gov::engine::evidence_processor c
Definition:
evidence_processor.cpp:27
us::gov::engine::evidence_processor::process_evidences
void process_evidences(uint64_t maxts)
evidence_processor.h
us::gov::engine::calendar_t
Definition:
calendar.h:39
us::gov::engine::evidence_processor::ready_for_block_opening
virtual bool ready_for_block_opening(uint64_t) const =0
us::gov::engine::evidence_processor::t
bgtask t
Definition:
evidence_processor.h:30
us::gov::relay::evidence::ts
uint64_t ts
Definition:
evidence.h:53
calendar.h
c
Definition:
client.cpp:417
us::gov::engine::evidence_processor::wait_new_cycle
void wait_new_cycle()
us::gov::engine
Definition:
hmi.h:32
std
Definition:
app.h:380
us::gov::engine::evidence_processor
Definition:
evidence_processor.h:29
config.h
us::gov::relay::evidence
Definition:
evidence.h:31
us::gov::engine::evidence_processor::calendar
calendar_t calendar
Definition:
evidence_processor.h:43
gov.h
us::gov::engine::evidence_processor::wait
void wait()
log
#define log
Definition:
gov.h:83
us::gov::engine::evidence_processor::onwakeup
void onwakeup()
us::gov::bgtask
Definition:
bgtask.h:31
gov
engine
evidence_processor.h
Generated by
1.8.20