Project

General

Profile

Statistics
| Branch: | Revision:

root / scout / libscout / src / behaviors / Scheduler.h @ 97b6298e

History | View | Annotate | Download (585 Bytes)

1
#ifndef _SCHEDULER_
2
#define _SCHEDULER_
3

    
4
#include "helper_classes/PQWrapper.h"
5
#include "helper_classes/Order.h"
6
#include "WH_Robot.h"
7

    
8
class Scheduler {
9
    std::vector<WH_Robot> robots;
10
        PQWrapper unassignedOrders;
11
        std::vector<Order> assignedOrders;
12
        std::queue<WH_Robot> waitingRobots;
13
public:
14
    Scheduler();
15
        ~Scheduler();
16
        
17
        void get_task(WH_Robot robot);
18
        
19
        void create_orders();
20
        
21
        void task_complete(Order o);
22
        void task_failed(Order o);
23
        
24
        void waiting_dance();
25
        
26
        Order get_next_item();
27
        
28
        void run();
29
        //assumes a set_task(Order o) function in WH_Robot
30
        
31
        
32
    
33
};
34
#endif