-
Notifications
You must be signed in to change notification settings - Fork 49
/
abstract_game.hpp
49 lines (36 loc) · 1.04 KB
/
abstract_game.hpp
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
49
#ifndef __PURE_CFR_ABSTRACT_GAME_HPP__
#define __PURE_CFR_ABSTRACT_GAME_HPP__
/* abstract_game.hpp
* Richard Gibson, Jul 26, 2013
* Email: [email protected]
*
* Wrapper class for game and abstraction classes.
*
* Copyright (C) 2013 by Richard Gibson
*/
/* C / C++ / STL indluces */
/* project_acpc_server includes */
extern "C" {
#include "acpc_server_code/game.h"
}
/* Pure CFR includes */
#include "parameters.hpp"
#include "card_abstraction.hpp"
#include "action_abstraction.hpp"
#include "betting_node.hpp"
class AbstractGame {
public:
AbstractGame( const Parameters ¶ms );
virtual ~AbstractGame( );
virtual void count_entries( size_t num_entries_per_bucket[ MAX_ROUNDS ],
size_t total_num_entries[ MAX_ROUNDS ] ) const;
Game *game;
const CardAbstraction *card_abs;
const ActionAbstraction *action_abs;
BettingNode *betting_tree_root;
protected:
void count_entries_r( const BettingNode *node,
size_t num_entries_per_bucket[ MAX_ROUNDS ],
size_t total_num_entries[ MAX_ROUNDS ] ) const;
};
#endif