version 0.3.14
[fms.git] / include / freenet / captcha / alternatecaptcha1.h
1 #ifndef _alternate_captcha1_\r
2 #define _alternate_captcha1_\r
3 \r
4 #ifdef ALTERNATE_CAPTCHA\r
5 \r
6 #include <string>\r
7 \r
8 #include "icaptcha.h"\r
9 #include "freeimage/bitmap.h"\r
10 #include "freeimage/font.h"\r
11 \r
12 class AlternateCaptcha1:public ICaptcha\r
13 {\r
14 public:\r
15         AlternateCaptcha1();\r
16 \r
17         void Generate();\r
18 \r
19         const bool GetPuzzle(std::vector<unsigned char> &puzzle);\r
20         const bool GetSolution(std::vector<unsigned char> &solution);\r
21 \r
22 private:\r
23         void LoadFonts();\r
24         const std::string GenerateRandomString(const int len);\r
25 \r
26         static bool m_fontsloaded;\r
27         static std::vector<FreeImage::Font> m_fonts;\r
28 \r
29         std::vector<unsigned char> m_puzzle;\r
30         std::vector<unsigned char> m_solution;\r
31 \r
32 };\r
33 \r
34 #endif  // ALTERNATE_CAPTCHA\r
35 \r
36 #endif  // _alternate_captcha1_\r