Monero
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
randomx::VmBase< Allocator, softAes > Class Template Reference

#include <virtual_machine.hpp>

Inheritance diagram for randomx::VmBase< Allocator, softAes >:
Inheritance graph
[legend]
Collaboration diagram for randomx::VmBase< Allocator, softAes >:
Collaboration graph
[legend]

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: