openMSX
Public Member Functions | Static Public Member Functions | Friends | List of all members
openmsx::HardwareConfig Class Reference

#include <HardwareConfig.hh>

Public Member Functions

 HardwareConfig (const HardwareConfig &)=delete
 
HardwareConfigoperator= (const HardwareConfig &)=delete
 
 HardwareConfig (MSXMotherBoard &motherBoard, std::string hwName)
 
 ~HardwareConfig ()
 
MSXMotherBoardgetMotherBoard () const
 
const FileContextgetFileContext () const
 
void setFileContext (FileContext &&ctxt)
 
const XMLElementgetConfig () const
 
const std::string & getName () const
 
byte parseSlotMap () const
 Parses a slot mapping. More...
 
void parseSlots ()
 
void createDevices ()
 
void testRemove () const
 Checks whether this HardwareConfig can be deleted. More...
 
template<typename Archive >
void serialize (Archive &ar, unsigned version)
 

Static Public Member Functions

static XMLElement loadConfig (string_view type, string_view name)
 
static std::unique_ptr< HardwareConfigcreateMachineConfig (MSXMotherBoard &motherBoard, std::string machineName)
 
static std::unique_ptr< HardwareConfigcreateExtensionConfig (MSXMotherBoard &motherBoard, std::string extensionName, std::string slotname)
 
static std::unique_ptr< HardwareConfigcreateRomConfig (MSXMotherBoard &motherBoard, std::string romfile, std::string slotname, span< const TclObject > options)
 

Friends

struct SerializeConstructorArgs< HardwareConfig >
 

Detailed Description

Definition at line 21 of file HardwareConfig.hh.

Constructor & Destructor Documentation

◆ HardwareConfig() [1/2]

openmsx::HardwareConfig::HardwareConfig ( const HardwareConfig )
delete

◆ HardwareConfig() [2/2]

openmsx::HardwareConfig::HardwareConfig ( MSXMotherBoard motherBoard,
std::string  hwName 
)

Definition at line 111 of file HardwareConfig.cc.

References openmsx::MSXMotherBoard::getUserName(), and xrange().

◆ ~HardwareConfig()

openmsx::HardwareConfig::~HardwareConfig ( )

Member Function Documentation

◆ createDevices()

void openmsx::HardwareConfig::createDevices ( )

◆ createExtensionConfig()

unique_ptr< HardwareConfig > openmsx::HardwareConfig::createExtensionConfig ( MSXMotherBoard motherBoard,
std::string  extensionName,
std::string  slotname 
)
static

Definition at line 38 of file HardwareConfig.cc.

Referenced by openmsx::MSXMotherBoard::loadExtension().

◆ createMachineConfig()

unique_ptr< HardwareConfig > openmsx::HardwareConfig::createMachineConfig ( MSXMotherBoard motherBoard,
std::string  machineName 
)
static

Definition at line 29 of file HardwareConfig.cc.

Referenced by openmsx::MSXMotherBoard::loadMachine().

◆ createRomConfig()

unique_ptr< HardwareConfig > openmsx::HardwareConfig::createRomConfig ( MSXMotherBoard motherBoard,
std::string  romfile,
std::string  slotname,
span< const TclObject options 
)
static

◆ getConfig()

const XMLElement& openmsx::HardwareConfig::getConfig ( ) const
inline

◆ getFileContext()

const FileContext& openmsx::HardwareConfig::getFileContext ( ) const
inline

Definition at line 43 of file HardwareConfig.hh.

Referenced by openmsx::DeviceConfig::getFileContext().

◆ getMotherBoard()

MSXMotherBoard& openmsx::HardwareConfig::getMotherBoard ( ) const
inline

◆ getName()

const std::string& openmsx::HardwareConfig::getName ( ) const
inline

◆ loadConfig()

XMLElement openmsx::HardwareConfig::loadConfig ( string_view  type,
string_view  name 
)
static

◆ operator=()

HardwareConfig& openmsx::HardwareConfig::operator= ( const HardwareConfig )
delete

◆ parseSlotMap()

byte openmsx::HardwareConfig::parseSlotMap ( ) const

Parses a slot mapping.

Returns the slot selection: two bits per page for the slot to be selected in that page, like MSX port 0xA8.

Definition at line 299 of file HardwareConfig.cc.

References getConfig().

Referenced by getName(), and openmsx::MSXCPUInterface::MSXCPUInterface().

◆ parseSlots()

void openmsx::HardwareConfig::parseSlots ( )

◆ serialize()

template<typename Archive >
void openmsx::HardwareConfig::serialize ( Archive &  ar,
unsigned  version 
)

◆ setFileContext()

void openmsx::HardwareConfig::setFileContext ( FileContext &&  ctxt)
inline

Definition at line 44 of file HardwareConfig.hh.

Referenced by loadConfig().

◆ testRemove()

void openmsx::HardwareConfig::testRemove ( ) const

Friends And Related Function Documentation

◆ SerializeConstructorArgs< HardwareConfig >

friend struct SerializeConstructorArgs< HardwareConfig >
friend

Definition at line 97 of file HardwareConfig.hh.


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