CDClient cleanup and optimization (#1023)

* CDClient cleanup and optimization

- Use static function to get table name
- Remove unused GetName function
- Replace above function with a static GetTableName function
- Remove verbose comments
- Remove verbose initializers
- Remove need to specify table name when getting a table by name
- Remove unused typedef for mac and linux

* Re-add unused table

Convert tables to singletons

- Convert all CDClient tables to singletons
- Move Singleton.h to dCommon
- Reduce header clutter in CDClientManager
This commit is contained in:
David Markowitz
2023-03-17 07:36:21 -07:00
committed by GitHub
parent bd79e9433c
commit 7671cc6865
121 changed files with 399 additions and 1584 deletions

View File

@@ -1,9 +1,8 @@
#pragma once
// Custom Classes
#include "../CDClientDatabase.h"
#include "CDClientDatabase.h"
#include "Singleton.h"
// C++
#include <functional>
#include <string>
#include <vector>
@@ -19,23 +18,8 @@
#pragma warning (disable : 4244) //Disable double to float conversion warnings
#pragma warning (disable : 4715) //Disable "not all control paths return a value"
#if defined(__unix) || defined(__APPLE__)
//For Linux:
typedef __int64_t __int64;
#endif
/*!
\file CDTable.hpp
\brief A virtual class for CDClient Tables
*/
//! The base class for all CD tables
class CDTable {
public:
//! Returns the table's name
/*!
\return The table name
*/
virtual std::string GetName() const = 0;
template<class Table>
class CDTable : public Singleton<Table> {
protected:
virtual ~CDTable() = default;
};