area_business_speed_checker.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #ifndef AREA_BUSINESS_SPEED_CHECKER_H
  2. #define AREA_BUSINESS_SPEED_CHECKER_H
  3. #include<unordered_map>
  4. #include"area_business.h"
  5. class area_business_speed_checker : public area_business
  6. {
  7. public:
  8. area_business_speed_checker();
  9. virtual int area_business_type()
  10. {
  11. return 4;
  12. }
  13. void on_load_his(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data>&ptr);
  14. void on_enter(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data>&ptr);
  15. void on_hover(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr);
  16. void on_leave(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr);
  17. static void init_vehicle_category_from_db();
  18. private:
  19. static double _get_mine_limit_speed(int category_id)
  20. {
  21. auto serch = _vehicle_category_map.find(category_id);
  22. if(serch == _vehicle_category_map.end())
  23. {
  24. return 0;
  25. }
  26. return serch->second;
  27. }
  28. private:
  29. static std::unordered_map<int,double> _vehicle_category_map;
  30. };
  31. #endif // AREA_BUSINESS_SPEED_CHECKER_H