Monero
Loading...
Searching...
No Matches
randomx::VmBase< Allocator, softAes > Class Template Reference

#include <virtual_machine.hpp>

Inheritance diagram for randomx::VmBase< Allocator, softAes >:
Collaboration diagram for randomx::VmBase< Allocator, softAes >:

Public Member Functions

 ~VmBase () override
void allocate () override
void initScratchpad (void *seed) override
void getFinalResult (void *out, size_t outSize) override
void hashAndFill (void *out, size_t outSize, uint64_t *fill_state) override
Public Member Functions inherited from randomx_vm
virtual ~randomx_vm ()=0
virtual void setDataset (randomx_dataset *dataset)
virtual void setCache (randomx_cache *cache)
virtual void run (void *seed)=0
void resetRoundingMode ()
randomx::RegisterFilegetRegisterFile ()
const void * getScratchpad ()
const randomx::ProgramgetProgram ()
const uint8_tgetMemory () const

Protected Member Functions

void generateProgram (void *seed)
Protected Member Functions inherited from randomx_vm
void initialize ()

Additional Inherited Members

Public Attributes inherited from randomx_vm
std::string cacheKey
uint64_t tempHash [8]
Protected Attributes inherited from randomx_vm
randomx::Program program
randomx::RegisterFile reg
randomx::ProgramConfiguration config
randomx::MemoryRegisters mem
uint8_tscratchpad = nullptr
union { 
   randomx_cache *   cachePtr = nullptr 
   randomx_dataset *   datasetPtr 
}; 
uint64_t datasetOffset

Constructor & Destructor Documentation

◆ ~VmBase()

template<class Allocator, bool softAes>
randomx::VmBase< Allocator, softAes >::~VmBase ( )
override

Member Function Documentation

◆ allocate()

template<class Allocator, bool softAes>
void randomx::VmBase< Allocator, softAes >::allocate ( )
overridevirtual

Implements randomx_vm.

◆ generateProgram()

template<class Allocator, bool softAes>
void randomx::VmBase< Allocator, softAes >::generateProgram ( void * seed)
protected

◆ getFinalResult()

template<class Allocator, bool softAes>
void randomx::VmBase< Allocator, softAes >::getFinalResult ( void * out,
size_t outSize )
overridevirtual

Implements randomx_vm.

◆ hashAndFill()

template<class Allocator, bool softAes>
void randomx::VmBase< Allocator, softAes >::hashAndFill ( void * out,
size_t outSize,
uint64_t * fill_state )
overridevirtual

Implements randomx_vm.

◆ initScratchpad()

template<class Allocator, bool softAes>
void randomx::VmBase< Allocator, softAes >::initScratchpad ( void * seed)
overridevirtual

Implements randomx_vm.


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