Scorum
post_game_results_evaluator.hpp
Go to the documentation of this file.
1 #pragma once
5 #include <fc/shared_containers.hpp>
6 
7 namespace scorum {
8 namespace chain {
9 
10 using namespace scorum::protocol;
11 
12 class game_object;
13 
14 struct account_service_i;
15 struct dynamic_global_property_service_i;
16 struct betting_service_i;
17 struct game_service_i;
18 struct database_virtual_operations_emmiter_i;
19 
20 class post_game_results_evaluator : public evaluator_impl<data_service_factory_i, post_game_results_evaluator>
21 {
22 public:
24 
25  post_game_results_evaluator(data_service_factory_i& services,
27  database_virtual_operations_emmiter_i& virt_op_emitter);
28 
29  void do_apply(const operation_type& op);
30 
31 private:
32  void validate_all_winners_present(const fc::shared_flat_set<market_type>& markets,
33  const fc::flat_set<wincase_type>& winners) const;
34  void validate_opposite_winners_absent(const fc::flat_set<wincase_type>& winners) const;
35 
36 private:
37  account_service_i& _account_service;
38  betting_service_i& _betting_service;
39  game_service_i& _game_service;
40  dynamic_global_property_service_i& _dprops_service;
41  database_virtual_operations_emmiter_i& _virt_op_emitter;
42 };
43 }
44 }
Definition: asset.cpp:15
With this operation moderator provides game results(wincases)