PageRenderTime 22ms CodeModel.GetById 15ms app.highlight 6ms RepoModel.GetById 0ms app.codeStats 0ms

/BJEngine/src/IStrategyCalculator.h

https://bitbucket.org/mild1/bj
C Header | 26 lines | 17 code | 9 blank | 0 comment | 0 complexity | 711191430a8213701672f454fd08c813 MD5 | raw file
 1#pragma once
 2#include "stdafx.h"
 3#include <boost/shared_ptr.hpp>
 4
 5class GameActionsLib;
 6struct Rules;
 7
 8class BJ_EXPORT IStrategyCalculator
 9{
10public:
11	virtual bool BuildNextPiece() = 0;//returns false if building is finished
12
13	virtual float BuiltPart() const = 0;
14
15	virtual bool IsFinished() const = 0;
16
17	virtual const GameActionsLib& GetGameActionsLib() const = 0;
18
19	virtual void Reset(const Rules& rules, size_t maxThreads = 10) = 0;
20
21	virtual void Set(const GameActionsLib& lib, const Rules& rules) = 0;
22
23	virtual ~IStrategyCalculator(void) {}
24};
25
26typedef boost::shared_ptr<IStrategyCalculator> IStrategyCalculatorPtr;