123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- #ifndef GALAXY_H
- #define GALAXY_H
- #include <array>
- #include <cstdint>
- #include <iostream>
- #include <ostream>
- #include <regex>
- #include <set>
- #include <stdexcept>
- #include <string>
- #include <vector>
- #include "buysell.h"
- #include "yaml-cpp/yaml.h"
- typedef uint16_t sector_type;
- struct sector_warps {
- sector_type sector;
-
- std::set<sector_type> warps;
-
-
-
-
- sector_warps();
- void add(sector_type sector);
-
- friend std::ostream& operator<<(std::ostream& os, const sector_warps& warps);
-
-
- };
- int trade_type(port_type port1, port_type port2);
- struct trade_type_result {
- int type;
- buysell trades;
- };
- trade_type_result trade_type_info(port_type port1, port_type port2);
- struct port_pair_type {
- int type;
- sector_type s1, s2;
- };
- struct port {
- sector_type sector;
- uint8_t type;
- uint16_t amount[3];
- uint8_t percent[3];
- bool unknown(void);
-
- friend std::ostream& operator<<(std::ostream& os, const port& p);
- };
- struct port parse_portcim(const std::string line);
- class Galaxy {
- public:
- Galaxy();
- ~Galaxy();
- void reset(void);
- YAML::Node config;
- YAML::Node meta;
- int burnt_percent;
-
-
- std::map<sector_type, port> ports;
- std::map<sector_type, sector_warps> warps;
- void add_warp(sector_warps);
- void add_port(sector_type sector, int port_class);
- void add_port(port);
- void save(void);
- void load(void);
- std::vector<port_pair_type> find_best_trades(void);
- std::vector<port_pair_type> find_trades(sector_type sector,
- bool highest = true);
- void sort_port_pair_type(std::vector<port_pair_type>& pptv);
- char game;
- std::string username;
- };
- #endif
|