summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/parameters.h
blob: 23bdd0103577d9f0cb178be5af0670d0eeb8c591 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// license:BSD-3-Clause
// copyright-holders:Olivier Galibert,Aaron Giles
/***************************************************************************

    parameters.h

    Per-game parameters handling.

***************************************************************************/

#pragma once

#ifndef __EMU_H__
#error Dont include this file directly; include emu.h instead.
#endif

#ifndef __PARAMETERS_H__
#define __PARAMETERS_H__


//**************************************************************************
//  TYPE DEFINITIONS
//**************************************************************************

// ======================> parameters_manager

class parameters_manager
{
	DISABLE_COPYING(parameters_manager);

public:
	// construction/destruction
	parameters_manager(running_machine &machine);

	// getters
	running_machine &machine() const { return m_machine; }
	std::string lookup(std::string tag) const;

	// setters
	void add(std::string tag, std::string value);

private:
	// internal state
	running_machine &       m_machine;              // reference to owning machine
	std::unordered_map<std::string,std::string>       m_parameters;
};

#endif  // __INPTPORT_H__ */