DarkflameServer/dDatabase/Tables/CDPropertyEntranceComponentTable.h
2022-07-28 08:39:57 -05:00

42 lines
900 B
C++

#pragma once
#include "CDTable.h"
struct CDPropertyEntranceComponent {
uint32_t id;
uint32_t mapID;
std::string propertyName;
bool isOnProperty;
std::string groupType;
};
class CDPropertyEntranceComponentTable : public CDTable {
public:
//! Constructor
CDPropertyEntranceComponentTable();
//! Destructor
~CDPropertyEntranceComponentTable();
//! Returns the table's name
/*!
\return The table name
*/
[[nodiscard]] std::string GetName() const override;
//! Queries the table with a custom "where" clause
/*!
\param predicate The predicate
*/
CDPropertyEntranceComponent GetByID(uint32_t id);
//! Gets all the entries in the table
/*!
\return The entries
*/
[[nodiscard]] std::vector<CDPropertyEntranceComponent> GetEntries() const { return entries; }
private:
std::vector<CDPropertyEntranceComponent> entries{};
CDPropertyEntranceComponent defaultEntry{};
};