EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
MarketBotConf Class Reference

#include "MarketBotConf.h"

Inheritance diagram for MarketBotConf:
Collaboration diagram for MarketBotConf:

Public Member Functions

 ~MarketBotConf ()
 
- Public Member Functions inherited from XMLParserEx
template<typename T >
void AddMemberParser (const char *name, T &instance, bool(T::*method)(const TiXmlElement *))
 Adds a member parser. More...
 
template<typename T >
void AddValueParser (const char *name, T &value)
 Adds a value parser. More...
 
- Public Member Functions inherited from XMLParser
 XMLParser ()
 Primary constructor. More...
 
virtual ~XMLParser ()
 A destructor. More...
 
bool ParseFile (const char *file)
 Parses file using registered parsers. More...
 
bool ParseElement (const TiXmlElement *element) const
 Parses element using registered parsers. More...
 
bool ParseElementChildren (const TiXmlElement *element, size_t max=0) const
 Parses element's children using registered parsers. More...
 
void AddParser (const char *name, ElementParser *parser)
 Adds a parser. More...
 
void RemoveParser (const char *name)
 Removes a parser. More...
 
void ClearParsers ()
 Clears all parsers. More...
 
- Public Member Functions inherited from Singleton< MarketBotConf >
 Singleton ()
 Primary constructor. More...
 

Public Attributes

struct {
   bool   EnableRegional
 
   bool   EnableConst
 
   uint8   DataRefreshTime
 
   uint8   OrderLifetime
 
   uint16   OrdersPerRefresh
 
   uint32   MaxISKPerOrder
 
main
 
struct {
   uint8   RegionJumps
 
   uint8   ConstJumps
 
   uint8   SystemJumps
 
   uint8   OrdersPerRegion
 
   uint8   OrdersPerConst
 
   uint8   OrdersPerSystem
 
   uint8   DupeOrdersPerRegion
 
   uint8   DupeOrdersPerConst
 
   uint8   DupeOrdersPerSystem
 
   uint8   MinBuyAmount
 
buy
 
struct {
   bool   SellNamedItem
 
   uint8   OrdersPerRegion
 
   uint8   OrdersPerConst
 
   uint8   OrdersPerSystem
 
   uint8   DupeOrdersPerRegion
 
   uint8   DupeOrdersPerConst
 
   uint8   DupeOrdersPerSystem
 
   uint8   SellItemMetaLevelMin
 
   uint8   SellItemMetaLevelMax
 
   uint8   MinSellAmount
 
sell
 
- Public Attributes inherited from XMLParser
std::unique_ptr< TiXmlDocument > m_pXML_Document
 

MarketBotConf.h

system for automating/emulating buy and sell orders on the market. base config code taken from EVEServerConfig idea and some code taken from AuctionHouseBot - Copyright (C) 2008-2014 TrinityCore http://www.trinitycore.org/ : Allan

Date
: 10 August 2016
Version
: 0.15
 MarketBotConf ()
 
bool ProcessBotConf (const TiXmlElement *ele)
 
bool ProcessMain (const TiXmlElement *ele)
 
bool ProcessBuy (const TiXmlElement *ele)
 
bool ProcessSell (const TiXmlElement *ele)
 

Additional Inherited Members

- Static Public Member Functions inherited from Singleton< MarketBotConf >
static MarketBotConfget ()
 
- Protected Member Functions inherited from XMLParserEx
template<typename T >
void AddMemberParser (const char *name, bool(T::*method)(const TiXmlElement *))
 Adds a member parser, assuming that instance is this. More...
 
- Static Protected Attributes inherited from Singleton< MarketBotConf >
static std::shared_ptr
< MarketBotConf
mInstance
 

Detailed Description

Definition at line 16 of file MarketBotConf.h.

Constructor & Destructor Documentation

MarketBotConf::MarketBotConf ( )

Definition at line 16 of file MarketBotConf.cpp.

References XMLParserEx::AddMemberParser(), buy, main, ProcessBotConf(), and sell.

17 {
18  // register needed parsers
20 
21  // Set sane defaults
22  // items with a "N" behind them are NOT implemented
23  // items with a "P" behind them are PARTIALLY implemented
24  // items with /*x*/ behind them denote time idetifier, with x = (s=seconds, m=minutes, etc)
25 
26  // main
27  main.EnableRegional = false;//N
28  main.EnableConst = false;//N
29  main.DataRefreshTime = 15/*m*/;//N
30  main.OrderLifetime = 5/*d*/;//N
31  main.OrdersPerRefresh = 10;//N
32  main.MaxISKPerOrder = 1500000000;//N
33 
34  // buy
35  buy.RegionJumps = 10;//N
36  buy.ConstJumps = 8;//N
37  buy.SystemJumps = 5;//N
38  buy.OrdersPerRegion = 35;//N
39  buy.OrdersPerConst = 20;//N
40  buy.OrdersPerSystem = 10;//N
41  buy.DupeOrdersPerRegion = 10;//N
42  buy.DupeOrdersPerConst = 5;//N
43  buy.DupeOrdersPerSystem = 2;//N
44  buy.MinBuyAmount = 1;//N
45 
46  // sell
47  sell.SellNamedItem = false;//N
48  sell.OrdersPerRegion = 20;//N
49  sell.OrdersPerConst = 10;//N
50  sell.OrdersPerSystem = 2;//N
51  sell.DupeOrdersPerRegion = 5;//N
52  sell.DupeOrdersPerConst = 3;//N
53  sell.DupeOrdersPerSystem = 1;//N
54  sell.SellItemMetaLevelMin = 0;//N
55  sell.SellItemMetaLevelMax = 4;//N
56  sell.MinSellAmount = 1;//N
57 }
bool ProcessBotConf(const TiXmlElement *ele)
struct MarketBotConf::@126 buy
struct MarketBotConf::@127 sell
struct MarketBotConf::@125 main
void AddMemberParser(const char *name, T &instance, bool(T::*method)(const TiXmlElement *))
Adds a member parser.
Definition: XMLParserEx.h:55

Here is the call graph for this function:

MarketBotConf::~MarketBotConf ( )
inline

Definition at line 22 of file MarketBotConf.h.

22 { /* do nothing here */ }

Member Function Documentation

bool MarketBotConf::ProcessBotConf ( const TiXmlElement *  ele)
protected

Definition at line 59 of file MarketBotConf.cpp.

References XMLParserEx::AddMemberParser(), XMLParser::ParseElementChildren(), ProcessBuy(), ProcessMain(), ProcessSell(), and XMLParser::RemoveParser().

Referenced by MarketBotConf().

60 {
61  // entering element, extend allowed syntax
65 
66  // parse the element
67  const bool result = ParseElementChildren( ele );
68 
69  // leaving element, reduce allowed syntax
70  RemoveParser( "main" );
71  RemoveParser( "buy" );
72  RemoveParser( "sell" );
73 
74  // return status of parsing
75  return result;
76 }
bool ProcessSell(const TiXmlElement *ele)
bool ProcessMain(const TiXmlElement *ele)
bool ProcessBuy(const TiXmlElement *ele)
void RemoveParser(const char *name)
Removes a parser.
Definition: XMLParser.cpp:106
bool ParseElementChildren(const TiXmlElement *element, size_t max=0) const
Parses element's children using registered parsers.
Definition: XMLParser.cpp:72
void AddMemberParser(const char *name, T &instance, bool(T::*method)(const TiXmlElement *))
Adds a member parser.
Definition: XMLParserEx.h:55

Here is the call graph for this function:

Here is the caller graph for this function:

bool MarketBotConf::ProcessBuy ( const TiXmlElement *  ele)
protected

Definition at line 99 of file MarketBotConf.cpp.

References XMLParserEx::AddValueParser(), buy, XMLParser::ParseElementChildren(), and XMLParser::RemoveParser().

Referenced by ProcessBotConf().

100 {
101  AddValueParser( "MinBuyAmount", buy.MinBuyAmount );
102  AddValueParser( "RegionJumps", buy.RegionJumps );
103  AddValueParser( "ConstJumps", buy.ConstJumps );
104  AddValueParser( "SystemJumps", buy.SystemJumps );
105  AddValueParser( "OrdersPerRegion", buy.OrdersPerRegion );
106  AddValueParser( "OrdersPerConst", buy.OrdersPerConst );
107  AddValueParser( "OrdersPerSystem", buy.OrdersPerSystem );
108  AddValueParser( "DupeOrdersPerRegion", buy.DupeOrdersPerRegion );
109  AddValueParser( "DupeOrdersPerConst", buy.DupeOrdersPerConst );
110  AddValueParser( "DupeOrdersPerSystem", buy.DupeOrdersPerSystem );
111 
112  const bool result = ParseElementChildren( ele );
113 
114  RemoveParser( "MinBuyAmount" );
115  RemoveParser( "RegionJumps" );
116  RemoveParser( "ConstJumps" );
117  RemoveParser( "SystemJumps" );
118  RemoveParser( "OrdersPerRegion" );
119  RemoveParser( "OrdersPerConst" );
120  RemoveParser( "OrdersPerSystem" );
121  RemoveParser( "DupeOrdersPerRegion" );
122  RemoveParser( "DupeOrdersPerConst" );
123  RemoveParser( "DupeOrdersPerSystem" );
124 
125  return result;
126 }
struct MarketBotConf::@126 buy
void RemoveParser(const char *name)
Removes a parser.
Definition: XMLParser.cpp:106
bool ParseElementChildren(const TiXmlElement *element, size_t max=0) const
Parses element's children using registered parsers.
Definition: XMLParser.cpp:72
void AddValueParser(const char *name, T &value)
Adds a value parser.
Definition: XMLParserEx.h:67

Here is the call graph for this function:

Here is the caller graph for this function:

bool MarketBotConf::ProcessMain ( const TiXmlElement *  ele)
protected

Definition at line 78 of file MarketBotConf.cpp.

References XMLParserEx::AddValueParser(), main, XMLParser::ParseElementChildren(), and XMLParser::RemoveParser().

Referenced by ProcessBotConf().

79 {
80  AddValueParser( "EnableRegional", main.EnableRegional );
81  AddValueParser( "EnableConst", main.EnableConst );
82  AddValueParser( "DataRefreshTime", main.DataRefreshTime );
83  AddValueParser( "OrderLifetime", main.OrderLifetime );
84  AddValueParser( "OrdersPerRefresh", main.OrdersPerRefresh );
85  AddValueParser( "MaxISKPerOrder", main.MaxISKPerOrder );
86 
87  const bool result = ParseElementChildren( ele );
88 
89  RemoveParser( "EnableRegional" );
90  RemoveParser( "EnableConst" );
91  RemoveParser( "DataRefreshTime" );
92  RemoveParser( "OrderLifetime" );
93  RemoveParser( "OrdersPerRefresh" );
94  RemoveParser( "MaxISKPerOrder" );
95 
96  return result;
97 }
void RemoveParser(const char *name)
Removes a parser.
Definition: XMLParser.cpp:106
bool ParseElementChildren(const TiXmlElement *element, size_t max=0) const
Parses element's children using registered parsers.
Definition: XMLParser.cpp:72
void AddValueParser(const char *name, T &value)
Adds a value parser.
Definition: XMLParserEx.h:67
struct MarketBotConf::@125 main

Here is the call graph for this function:

Here is the caller graph for this function:

bool MarketBotConf::ProcessSell ( const TiXmlElement *  ele)
protected

Definition at line 128 of file MarketBotConf.cpp.

References XMLParserEx::AddValueParser(), XMLParser::ParseElementChildren(), XMLParser::RemoveParser(), and sell.

Referenced by ProcessBotConf().

129 {
130  AddValueParser( "SellNamedItem", sell.SellNamedItem );
131  AddValueParser( "MinSellAmount", sell.MinSellAmount );
132  AddValueParser( "OrdersPerRegion", sell.OrdersPerRegion );
133  AddValueParser( "OrdersPerConst", sell.OrdersPerConst );
134  AddValueParser( "OrdersPerSystem", sell.OrdersPerSystem );
135  AddValueParser( "DupeOrdersPerRegion", sell.DupeOrdersPerRegion );
136  AddValueParser( "DupeOrdersPerConst", sell.DupeOrdersPerConst );
137  AddValueParser( "DupeOrdersPerSystem", sell.DupeOrdersPerSystem );
138  AddValueParser( "SellItemMetaLevelMin", sell.SellItemMetaLevelMin );
139  AddValueParser( "SellItemMetaLevelMax", sell.SellItemMetaLevelMax );
140 
141  const bool result = ParseElementChildren( ele );
142 
143  RemoveParser( "SellNamedItem" );
144  RemoveParser( "MinSellAmount" );
145  RemoveParser( "OrdersPerRegion" );
146  RemoveParser( "OrdersPerConst" );
147  RemoveParser( "OrdersPerSystem" );
148  RemoveParser( "DupeOrdersPerRegion" );
149  RemoveParser( "DupeOrdersPerConst" );
150  RemoveParser( "DupeOrdersPerSystem" );
151  RemoveParser( "SellItemMetaLevelMax" );
152  RemoveParser( "SellItemMetaLevelMin" );
153 
154  return result;
155 }
struct MarketBotConf::@127 sell
void RemoveParser(const char *name)
Removes a parser.
Definition: XMLParser.cpp:106
bool ParseElementChildren(const TiXmlElement *element, size_t max=0) const
Parses element's children using registered parsers.
Definition: XMLParser.cpp:72
void AddValueParser(const char *name, T &value)
Adds a value parser.
Definition: XMLParserEx.h:67

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

struct { ... } MarketBotConf::buy

Referenced by MarketBotConf(), and ProcessBuy().

uint8 MarketBotConf::ConstJumps

Definition at line 39 of file MarketBotConf.h.

uint8 MarketBotConf::DataRefreshTime

Definition at line 29 of file MarketBotConf.h.

uint8 MarketBotConf::DupeOrdersPerConst

Definition at line 45 of file MarketBotConf.h.

uint8 MarketBotConf::DupeOrdersPerRegion

Definition at line 44 of file MarketBotConf.h.

uint8 MarketBotConf::DupeOrdersPerSystem

Definition at line 46 of file MarketBotConf.h.

bool MarketBotConf::EnableConst

Definition at line 28 of file MarketBotConf.h.

bool MarketBotConf::EnableRegional

Definition at line 27 of file MarketBotConf.h.

struct { ... } MarketBotConf::main

Referenced by MarketBotConf(), and ProcessMain().

uint32 MarketBotConf::MaxISKPerOrder

Definition at line 32 of file MarketBotConf.h.

uint8 MarketBotConf::MinBuyAmount

Definition at line 47 of file MarketBotConf.h.

uint8 MarketBotConf::MinSellAmount

Definition at line 62 of file MarketBotConf.h.

uint8 MarketBotConf::OrderLifetime

Definition at line 30 of file MarketBotConf.h.

uint8 MarketBotConf::OrdersPerConst

Definition at line 42 of file MarketBotConf.h.

uint16 MarketBotConf::OrdersPerRefresh

Definition at line 31 of file MarketBotConf.h.

uint8 MarketBotConf::OrdersPerRegion

Definition at line 41 of file MarketBotConf.h.

uint8 MarketBotConf::OrdersPerSystem

Definition at line 43 of file MarketBotConf.h.

uint8 MarketBotConf::RegionJumps

Definition at line 38 of file MarketBotConf.h.

struct { ... } MarketBotConf::sell

Referenced by MarketBotConf(), and ProcessSell().

uint8 MarketBotConf::SellItemMetaLevelMax

Definition at line 61 of file MarketBotConf.h.

uint8 MarketBotConf::SellItemMetaLevelMin

Definition at line 60 of file MarketBotConf.h.

bool MarketBotConf::SellNamedItem

Definition at line 53 of file MarketBotConf.h.

uint8 MarketBotConf::SystemJumps

Definition at line 40 of file MarketBotConf.h.


The documentation for this class was generated from the following files: