diff --git a/libraries/app/database_api.cpp b/libraries/app/database_api.cpp index 0e57ef7f..5184ea77 100644 --- a/libraries/app/database_api.cpp +++ b/libraries/app/database_api.cpp @@ -95,6 +95,9 @@ class database_api_impl : public std::enable_shared_from_this vector list_assets(const string& lower_bound_symbol, uint32_t limit)const; vector> lookup_asset_symbols(const vector& symbols_or_ids)const; + // Peerplays + vector list_sports() const; + // Markets / feeds vector get_limit_orders(asset_id_type a, asset_id_type b, uint32_t limit)const; vector get_call_orders(asset_id_type a, uint32_t limit)const; @@ -878,6 +881,25 @@ vector> database_api_impl::lookup_asset_symbols(const vec return result; } +////////////////////////////////////////////////////////////////////// +// Peerplays // +////////////////////////////////////////////////////////////////////// +vector database_api::list_sports() const +{ + return my->list_sports(); +} + +vector database_api_impl::list_sports() const +{ + const auto& sport_index = _db.get_index_type().indices().get(); + vector result; + for (const sport_object& sport : sport_index) + { + result.emplace_back(sport); + } + return result; +} + ////////////////////////////////////////////////////////////////////// // // // Markets / feeds // diff --git a/libraries/app/include/graphene/app/database_api.hpp b/libraries/app/include/graphene/app/database_api.hpp index 456e0bae..938b57f6 100644 --- a/libraries/app/include/graphene/app/database_api.hpp +++ b/libraries/app/include/graphene/app/database_api.hpp @@ -38,6 +38,7 @@ #include #include #include +#include #include #include @@ -312,6 +313,15 @@ class database_api */ vector> lookup_asset_symbols(const vector& symbols_or_ids)const; + ///////////////////// + // Peerplays // + ///////////////////// + + /** + * @brief Get a list of all sports + */ + vector list_sports() const; + ///////////////////// // Markets / feeds // /////////////////////