Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
poseidon2_trace.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <memory>
4
5
#include "
barretenberg/vm2/generated/columns.hpp
"
6
#include "
barretenberg/vm2/simulation/events/event_emitter.hpp
"
7
#include "
barretenberg/vm2/simulation/events/poseidon2_event.hpp
"
8
#include "
barretenberg/vm2/tracegen/lib/interaction_def.hpp
"
9
#include "
barretenberg/vm2/tracegen/trace_container.hpp
"
10
11
namespace
bb::avm2::tracegen
{
12
13
class
Poseidon2TraceBuilder
final {
14
public
:
15
void
process_hash
(
const
simulation::EventEmitterInterface<simulation::Poseidon2HashEvent>::Container
& hash_events,
16
TraceContainer
&
trace
);
17
void
process_permutation
(
18
const
simulation::EventEmitterInterface<simulation::Poseidon2PermutationEvent>::Container
& perm_events,
19
TraceContainer
&
trace
);
20
21
void
process_permutation_with_memory
(
const
simulation::EventEmitterInterface
<
22
simulation::Poseidon2PermutationMemoryEvent
>::Container& perm_mem_events,
23
TraceContainer
&
trace
);
24
25
static
const
InteractionDefinition
interactions
;
26
};
27
28
}
// namespace bb::avm2::tracegen
bb::avm2::simulation::EventEmitterInterface
Definition
event_emitter.hpp:10
bb::avm2::simulation::EventEmitterInterface::Container
std::vector< Event > Container
Definition
event_emitter.hpp:12
bb::avm2::tracegen::InteractionDefinition
Definition
interaction_def.hpp:29
bb::avm2::tracegen::Poseidon2TraceBuilder
Definition
poseidon2_trace.hpp:13
bb::avm2::tracegen::Poseidon2TraceBuilder::interactions
static const InteractionDefinition interactions
Definition
poseidon2_trace.hpp:25
bb::avm2::tracegen::Poseidon2TraceBuilder::process_permutation
void process_permutation(const simulation::EventEmitterInterface< simulation::Poseidon2PermutationEvent >::Container &perm_events, TraceContainer &trace)
Definition
poseidon2_trace.cpp:344
bb::avm2::tracegen::Poseidon2TraceBuilder::process_permutation_with_memory
void process_permutation_with_memory(const simulation::EventEmitterInterface< simulation::Poseidon2PermutationMemoryEvent >::Container &perm_mem_events, TraceContainer &trace)
Definition
poseidon2_trace.cpp:434
bb::avm2::tracegen::Poseidon2TraceBuilder::process_hash
void process_hash(const simulation::EventEmitterInterface< simulation::Poseidon2HashEvent >::Container &hash_events, TraceContainer &trace)
Definition
poseidon2_trace.cpp:289
bb::avm2::tracegen::TraceContainer
Definition
trace_container.hpp:22
columns.hpp
trace
TestTraceContainer trace
Definition
data_copy.test.cpp:59
event_emitter.hpp
interaction_def.hpp
bb::avm2::tracegen
Definition
full_row.hpp:10
poseidon2_event.hpp
bb::avm2::simulation::Poseidon2PermutationMemoryEvent
Definition
poseidon2_event.hpp:28
trace_container.hpp
src
barretenberg
vm2
tracegen
poseidon2_trace.hpp
Generated by
1.9.8