1 /**********************************************************************
2 Freeciv - Copyright (C) 1996-2013 - Freeciv Development Team
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2, or (at your option)
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12 ***********************************************************************/
14 #ifndef FC_META_KNOWLEDGE_H
15 #define FC_META_KNOWLEDGE_H
18 #include "requirements.h"
22 #endif /* __cplusplus */
24 enum fc_tristate
tri_and(enum fc_tristate one
,
25 enum fc_tristate two
);
28 mke_eval_req(const struct player
*pow_player
,
29 const struct player
*target_player
,
30 const struct player
*other_player
,
31 const struct city
*target_city
,
32 const struct impr_type
*target_building
,
33 const struct tile
*target_tile
,
34 const struct unit
*target_unit
,
35 const struct output_type
*target_output
,
36 const struct specialist
*target_specialist
,
37 const struct requirement
*req
,
38 const enum req_problem_type prob_type
);
41 mke_eval_reqs(const struct player
*pow_player
,
42 const struct player
*target_player
,
43 const struct player
*other_player
,
44 const struct city
*target_city
,
45 const struct impr_type
*target_building
,
46 const struct tile
*target_tile
,
47 const struct unit
*target_unit
,
48 const struct output_type
*target_output
,
49 const struct specialist
*target_specialist
,
50 const struct requirement_vector
*reqs
,
51 const enum req_problem_type prob_type
);
54 bool can_see_techs_of_target(const struct player
*pow_player
,
55 const struct player
*target_player
);
57 bool mke_can_see_city_externals(const struct player
*pow_player
,
58 const struct city
*target_city
);
62 #endif /* __cplusplus */
64 #endif /* FC_META_KNOWLEDGE_H */