bygfoot/src/league.h

70 lines
1.7 KiB
C

#ifndef LEAGUE_H
#define LEAGUE_H
#include "bygfoot.h"
#include "league_struct.h"
#include "fixture_struct.h"
#define league_cup_get_teams(clid) (clid < ID_CUP_START) ? (league_from_clid(clid)->teams) : (cup_from_clid(clid)->teams)
#define league_cup_get_fixtures(clid) (clid < ID_CUP_START) ? (league_from_clid(clid)->fixtures) : (cup_from_clid(clid)->fixtures)
#define league_cup_get_name_string(clid) (clid < ID_CUP_START) ? league_from_clid(clid)->name->str : cup_from_clid(clid)->name->str
#define league_cup_get_yellow_red(clid) (clid < ID_CUP_START) ? (league_from_clid(clid)->yellow_red) : (cup_from_clid(clid)->yellow_red)
#define league_has_prom_games(league) (strlen(league->prom_rel.prom_games_dest_sid->str) > 0)
League
league_new(gboolean new_id);
PromRelElement
prom_rel_element_new(void);
TableElement
league_table_element_new(Team *team);
gint
league_cup_get_index_from_clid(gint clid);
League*
league_from_clid(gint clid);
gint
league_cup_get_next_clid(gint clid);
gint
league_cup_get_previous_clid(gint clid);
Fixture*
league_cup_get_next_fixture(gint clid, gint week_number, gint week_round_number);
Fixture*
league_cup_get_previous_fixture(gint clid, gint week_number, gint week_round_number);
gint
league_get_index(gint clid);
gint
league_cup_average_capacity(gint clid);
void
league_get_team_movements(League *league, GArray *team_movements);
gint
league_index_from_sid(const gchar *sid);
void
league_remove_team_with_id(League *league, gint id);
void
league_season_start(League *league);
gboolean
query_league_rank_in_prom_games(const League *league, gint rank);
gboolean
query_league_prom_games_begin(const League *league);
gboolean
query_league_matches_in_week(const League *league, gint week_number);
#endif