Bicameral Engine
GPU-resident engine for a magic-research open-world game
Loading...
Searching...
No Matches
bicameral::sim::anonymous_namespace{probe_trace.cpp} Namespace Reference

Classes

struct  TickTree
struct  GraphTraceFilter
struct  GraphTraceRecord

Typedefs

using Coordinates = std::array<uint32_t, 3>

Functions

Coordinates BlockCoordinates (uint32_t block)
Coordinates CellCoordinates (uint32_t cell)
std::string FormatCoordinates (const Coordinates &coordinates)
std::vector< uint32_t > BlockAndNeighbors (uint32_t block)
bool WantsTick (const GraphTraceFilter &filter, uint64_t tick)
bool WantsBlock (const GraphTraceFilter &filter, uint32_t block)
void BuildTickTree (std::span< const GraphTraceRecord > records, TickTree &tree)
std::string FormatChild (const TickTree &tree, uint32_t block)
std::string FormatRoot (const TickTree &tree, uint32_t root, uint64_t tick, const std::set< uint32_t > &changedBefore, bool previousTraced)
std::string FormatTick (uint64_t tick, const TickTree &tree, const std::set< uint32_t > &changedBefore, bool previousTraced, size_t recordCount)
bool SameCellWords (std::span< const uint32_t > gpuCells, std::span< const uint32_t > cpuCells, uint32_t index)
uint32_t CountBlockDifferences (uint32_t block, std::span< const uint32_t > gpuCells, std::span< const uint32_t > cpuCells, Coordinates &first)
std::string FormatRecord (const GraphTraceRecord &record)

Typedef Documentation

◆ Coordinates

using bicameral::sim::anonymous_namespace{probe_trace.cpp}::Coordinates = std::array<uint32_t, 3>

Definition at line 17 of file probe_trace.cpp.

Function Documentation

◆ BlockAndNeighbors()

std::vector< uint32_t > bicameral::sim::anonymous_namespace{probe_trace.cpp}::BlockAndNeighbors ( uint32_t block)

Definition at line 35 of file probe_trace.cpp.

References BlockAndNeighbors(), and BlockCoordinates().

Referenced by BlockAndNeighbors().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BlockCoordinates()

Coordinates bicameral::sim::anonymous_namespace{probe_trace.cpp}::BlockCoordinates ( uint32_t block)

Definition at line 21 of file probe_trace.cpp.

References BlockCoordinates().

Referenced by BlockAndNeighbors(), BlockCoordinates(), CountBlockDifferences(), FormatChild(), FormatRoot(), and WantsBlock().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildTickTree()

void bicameral::sim::anonymous_namespace{probe_trace.cpp}::BuildTickTree ( std::span< const GraphTraceRecord > records,
TickTree & tree )

Definition at line 83 of file probe_trace.cpp.

References BuildTickTree(), bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::conducted, bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::parents, bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::pokes, bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::roots, and bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::selfWakes.

Referenced by BuildTickTree().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CellCoordinates()

Coordinates bicameral::sim::anonymous_namespace{probe_trace.cpp}::CellCoordinates ( uint32_t cell)

Definition at line 26 of file probe_trace.cpp.

References CellCoordinates().

Referenced by CellCoordinates(), and FormatRoot().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CountBlockDifferences()

uint32_t bicameral::sim::anonymous_namespace{probe_trace.cpp}::CountBlockDifferences ( uint32_t block,
std::span< const uint32_t > gpuCells,
std::span< const uint32_t > cpuCells,
Coordinates & first )

Definition at line 172 of file probe_trace.cpp.

References BlockCoordinates(), CountBlockDifferences(), and SameCellWords().

Referenced by CountBlockDifferences().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FormatChild()

std::string bicameral::sim::anonymous_namespace{probe_trace.cpp}::FormatChild ( const TickTree & tree,
uint32_t block )

Definition at line 101 of file probe_trace.cpp.

References BlockCoordinates(), bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::conducted, FormatChild(), and FormatCoordinates().

Referenced by FormatChild(), and FormatTick().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FormatCoordinates()

std::string bicameral::sim::anonymous_namespace{probe_trace.cpp}::FormatCoordinates ( const Coordinates & coordinates)

Definition at line 30 of file probe_trace.cpp.

References FormatCoordinates().

Referenced by FormatChild(), FormatCoordinates(), and FormatRoot().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FormatRecord()

std::string bicameral::sim::anonymous_namespace{probe_trace.cpp}::FormatRecord ( const GraphTraceRecord & record)

Definition at line 195 of file probe_trace.cpp.

References FormatRecord(), bicameral::gpu::GraphTraceRecord::kind, bicameral::gpu::GraphTraceRecord::object, bicameral::gpu::GraphTraceRecord::subject, and bicameral::gpu::GraphTraceRecord::tick.

Referenced by FormatRecord().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FormatRoot()

std::string bicameral::sim::anonymous_namespace{probe_trace.cpp}::FormatRoot ( const TickTree & tree,
uint32_t root,
uint64_t tick,
const std::set< uint32_t > & changedBefore,
bool previousTraced )

Definition at line 111 of file probe_trace.cpp.

References BlockCoordinates(), CellCoordinates(), FormatCoordinates(), FormatRoot(), bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::pokes, and bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::selfWakes.

Referenced by FormatRoot(), and FormatTick().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FormatTick()

std::string bicameral::sim::anonymous_namespace{probe_trace.cpp}::FormatTick ( uint64_t tick,
const TickTree & tree,
const std::set< uint32_t > & changedBefore,
bool previousTraced,
size_t recordCount )

Definition at line 131 of file probe_trace.cpp.

References bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::conducted, FormatChild(), FormatRoot(), FormatTick(), bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::parents, and bicameral::sim::anonymous_namespace{probe_trace.cpp}::TickTree::roots.

Referenced by FormatTick().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SameCellWords()

bool bicameral::sim::anonymous_namespace{probe_trace.cpp}::SameCellWords ( std::span< const uint32_t > gpuCells,
std::span< const uint32_t > cpuCells,
uint32_t index )

Definition at line 165 of file probe_trace.cpp.

References SameCellWords().

Referenced by CountBlockDifferences(), and SameCellWords().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ WantsBlock()

bool bicameral::sim::anonymous_namespace{probe_trace.cpp}::WantsBlock ( const GraphTraceFilter & filter,
uint32_t block )

Definition at line 62 of file probe_trace.cpp.

References BlockCoordinates(), bicameral::gpu::GraphTraceFilter::boxMax, bicameral::gpu::GraphTraceFilter::boxMin, and WantsBlock().

Referenced by WantsBlock().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ WantsTick()

bool bicameral::sim::anonymous_namespace{probe_trace.cpp}::WantsTick ( const GraphTraceFilter & filter,
uint64_t tick )

Definition at line 58 of file probe_trace.cpp.

References bicameral::gpu::GraphTraceFilter::enabled, bicameral::gpu::GraphTraceFilter::tickBegin, bicameral::gpu::GraphTraceFilter::tickEnd, and WantsTick().

Referenced by WantsTick().

Here is the call graph for this function:
Here is the caller graph for this function: