1//============================================================================
2//
3// SSSS tt lll lll
4// SS SS tt ll ll
5// SS tttttt eeee ll ll aaaa
6// SSSS tt ee ee ll ll aa
7// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator"
8// SS SS tt ee ll ll aa aa
9// SSSS ttt eeeee llll llll aaaaa
10//
11// Copyright (c) 1995-2019 by Bradford W. Mott, Stephen Anthony
12// and the Stella Team
13//
14// See the file "License.txt" for information on usage and redistribution of
15// this file, and for a DISCLAIMER OF ALL WARRANTIES.
16//============================================================================
17
18#ifndef KEY_VALUE_REPOSITORY_HXX
19#define KEY_VALUE_REPOSITORY_HXX
20
21#include <map>
22
23#include "Variant.hxx"
24#include "bspf.hxx"
25
26class KeyValueRepository
27{
28 public:
29
30 virtual ~KeyValueRepository() = default;
31
32 virtual std::map<string, Variant> load() = 0;
33
34 virtual void save(const std::map<string, Variant>& values) = 0;
35
36 virtual void save(const string& key, const Variant& value) = 0;
37};
38
39#endif // KEY_VALUE_REPOSITORY_HXX
40