yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::rom::WriteFence Class Reference

#include <write_fence.h>

Public Member Functions

absl::Status Allow (uint32_t start, uint32_t end, std::string_view label)
 
absl::Status Check (uint32_t start, uint32_t size, std::string_view op) const
 
void RecordWrite (uint32_t start, uint32_t size)
 
const std::vector< WriteRange > & allowed_ranges () const
 
const std::vector< std::pair< uint32_t, uint32_t > > & written_ranges () const
 
void ClearWritten ()
 

Private Member Functions

void AddWrittenRange (uint32_t start, uint32_t end)
 

Static Private Member Functions

static bool RangesOverlap (uint32_t a_start, uint32_t a_end, uint32_t b_start, uint32_t b_end)
 

Private Attributes

std::vector< WriteRangeallowed_
 
std::vector< std::pair< uint32_t, uint32_t > > written_
 

Detailed Description

Definition at line 30 of file write_fence.h.

Member Function Documentation

◆ Allow()

absl::Status yaze::rom::WriteFence::Allow ( uint32_t start,
uint32_t end,
std::string_view label )
inline

◆ Check()

absl::Status yaze::rom::WriteFence::Check ( uint32_t start,
uint32_t size,
std::string_view op ) const
inline

Definition at line 59 of file write_fence.h.

References allowed_.

◆ RecordWrite()

void yaze::rom::WriteFence::RecordWrite ( uint32_t start,
uint32_t size )
inline

Definition at line 81 of file write_fence.h.

References AddWrittenRange().

Here is the call graph for this function:

◆ allowed_ranges()

const std::vector< WriteRange > & yaze::rom::WriteFence::allowed_ranges ( ) const
inline

Definition at line 95 of file write_fence.h.

References allowed_.

◆ written_ranges()

const std::vector< std::pair< uint32_t, uint32_t > > & yaze::rom::WriteFence::written_ranges ( ) const
inline

Definition at line 96 of file write_fence.h.

References written_.

◆ ClearWritten()

void yaze::rom::WriteFence::ClearWritten ( )
inline

Definition at line 100 of file write_fence.h.

References written_.

◆ RangesOverlap()

static bool yaze::rom::WriteFence::RangesOverlap ( uint32_t a_start,
uint32_t a_end,
uint32_t b_start,
uint32_t b_end )
inlinestaticprivate

Definition at line 103 of file write_fence.h.

Referenced by Allow().

◆ AddWrittenRange()

void yaze::rom::WriteFence::AddWrittenRange ( uint32_t start,
uint32_t end )
inlineprivate

Definition at line 108 of file write_fence.h.

References written_.

Referenced by RecordWrite().

Member Data Documentation

◆ allowed_

std::vector<WriteRange> yaze::rom::WriteFence::allowed_
private

Definition at line 138 of file write_fence.h.

Referenced by Allow(), allowed_ranges(), and Check().

◆ written_

std::vector<std::pair<uint32_t, uint32_t> > yaze::rom::WriteFence::written_
private

Definition at line 139 of file write_fence.h.

Referenced by AddWrittenRange(), ClearWritten(), and written_ranges().


The documentation for this class was generated from the following file: