QTfrontend/net/hwmap.h
branchflibqtfrontend
changeset 8092 08960209db8c
parent 8070 66bc20d089fc
equal deleted inserted replaced
8091:e0a76056a633 8092:08960209db8c
    21 #define _HWMAP_INCLUDED
    21 #define _HWMAP_INCLUDED
    22 
    22 
    23 #include <QByteArray>
    23 #include <QByteArray>
    24 #include <QString>
    24 #include <QString>
    25 #include <QImage>
    25 #include <QImage>
       
    26 #include <QTimer>
    26 
    27 
    27 #include "tcpBase.h"
    28 #include "tcpBase.h"
    28 
    29 #include "frontlib.h"
    29 enum MapGenerator
       
    30 {
       
    31     MAPGEN_REGULAR,
       
    32     MAPGEN_MAZE,
       
    33     MAPGEN_DRAWN,
       
    34     MAPGEN_MAP
       
    35 };
       
    36 
    30 
    37 class HWMap : public TCPBase
    31 class HWMap : public TCPBase
    38 {
    32 {
    39         Q_OBJECT
    33         Q_OBJECT
    40 
    34 
    41     public:
    35     public:
    42         HWMap(QObject *parent = 0);
    36         HWMap(QObject *parent = 0);
    43         virtual ~HWMap();
    37         virtual ~HWMap();
    44         void getImage(const QString & seed, int templateFilter, MapGenerator mapgen, int maze_size, const QByteArray & drawMapData);
    38         void getImage(const QString & seed, int templateFilter, int mapgen, int maze_size, const QByteArray & drawMapData);
    45         bool couldBeRemoved();
    39         bool couldBeRemoved();
    46 
    40 
    47     protected:
    41     protected:
    48         virtual QStringList getArguments();
    42         QStringList getArguments();
    49         virtual void onClientDisconnect();
    43         void onEngineStart();
    50         virtual void SendToClientFirst();
       
    51 
    44 
    52     signals:
    45     signals:
    53         void ImageReceived(const QImage newImage);
    46         void ImageReceived(const QImage newImage);
    54         void HHLimitReceived(int hhLimit);
    47         void HHLimitReceived(int hhLimit);
    55 
    48 
    56     private:
    49     private:
    57         QString m_seed;
    50         QString m_seed;
    58         int templateFilter;
       
    59         MapGenerator m_mapgen;
       
    60         int m_maze_size;
       
    61         QByteArray m_drawMapData;
       
    62 
    51 
       
    52         flib_mapconn * m_conn;
       
    53         flib_map * m_map;
       
    54 
       
    55         static void onSuccess(void *context, const uint8_t *bitmap, int numHedgehogs);
       
    56         static void onFailure(void *context, const char *errormessage);
    63     private slots:
    57     private slots:
    64 };
    58 };
    65 
    59 
    66 #endif // _HWMAP_INCLUDED
    60 #endif // _HWMAP_INCLUDED