# ai_sign.hpp

Go to the documentation of this file.

    00001 /* $Id: ai_sign.hpp 15123 2009-01-17 15:31:30Z truebrain $ */
    00002
    00005 #ifndef AI_SIGN_HPP
    00006 #define AI_SIGN_HPP
    00007
    00008 #include "ai_object.hpp"
    00009 #include "ai_error.hpp"
    00010 #include "ai_company.hpp"
    00011
    00015 class AISign : public AIObject {
    00016 public:
    00017   static const char *GetClassName() { return "AISign"; }
    00018
    00022   enum ErrorMessages {
    00023
    00025     ERR_SIGN_BASE = AIError::ERR_CAT_SIGN << AIError::ERR_CAT_BIT_SIZE,
    00026
    00028     ERR_SIGN_TOO_MANY_SIGNS,             // [STR_2808_TOO_MANY_SIGNS]
    00029   };
    00030
    00036   static SignID GetMaxSignID();
    00037
    00043   static bool IsValidSign(SignID sign_id);
    00044
    00055   static bool SetName(SignID sign_id, const char *name);
    00056
    00063   static char *GetName(SignID sign_id);
    00064
    00071   static TileIndex GetLocation(SignID sign_id);
    00072
    00085   static SignID BuildSign(TileIndex location, const char *text);
    00086
    00093   static bool RemoveSign(SignID sign_id);
    00094 };
    00095
    00096 #endif /* AI_SIGN_HPP */