PokerUnicorn
Loading...
Searching...
No Matches
table.h
Go to the documentation of this file.
1/*
2 * PokerUnicorn Server
3 * This project uses test network, NO real coin or NO real money involved.
4 * Copyright (C) 2023, Oğuzhan Eroğlu <meowingcate@gmail.com> (https://meowingcat.io)
5 * Licensed under GPLv3 License
6 * See LICENSE for more info
7 */
8
9#pragma once
10
22#include <libpq-fe.h>
23
24#include "sugar.h"
25#include "uniqid.h"
26#include "ref.h"
27#include "string.h"
28
29#define MAX_PLAYERS 10
30#define ACTION_TIMEOUT 10000 /* Milliseconds */
31
35typedef struct pkrsrv_table {
38 uint64_t big_blind;
39 uint64_t small_blind;
41 int action_timeout; /* Microseconds */
42 pkrsrv_string_t* name;
43 uint64_t enterance_min;
44 uint64_t enterance_max;
48
49typedef struct pkrsrv_tables {
51 int length;
54
55typedef struct {
57 uint64_t big_blind;
58 uint64_t small_blind;
60 int action_timeout; /* Microseconds */
61 pkrsrv_string_t* name;
62 uint64_t enterance_min;
63 uint64_t enterance_max;
67
70pkrsrv_table_t* pkrsrv_table_get(PGconn* pg_conn, uint64_t p_id);
72
73typedef struct {
74 int offset;
75 int length;
80
81void pkrsrv_table_set_players_num(PGconn* pg_conn, pkrsrv_table_t* table, int num);
82void pkrsrv_table_set_watchers_num(PGconn* pg_conn, pkrsrv_table_t* table, int num);
83void pkrsrv_table_incr_players_num(PGconn* pg_conn, pkrsrv_table_t* table, int by);
84void pkrsrv_table_incr_watchers_num(PGconn* pg_conn, pkrsrv_table_t* table, int by);
85
#define PKRSRV_REF_COUNTEDIFY()
Makes a structure reference-counted.
Definition ref.h:70
pkrsrv_string_t * name
Definition table.h:61
int action_timeout
Definition table.h:60
uint64_t enterance_max
Definition table.h:63
pkrsrv_string_t * name
Definition table.h:42
pkrsrv_table_t ** tables
Definition table.h:52
uint64_t small_blind
Definition table.h:58
int players_count
Definition table.h:45
int length
Definition table.h:75
int length
Definition table.h:51
uint64_t big_blind
Definition table.h:38
int watchers_count
Definition table.h:65
uint64_t enterance_min
Definition table.h:62
int watchers_count
Definition table.h:46
int action_timeout
Definition table.h:41
uint64_t big_blind
Definition table.h:57
uint64_t enterance_max
Definition table.h:44
int max_players
Definition table.h:59
int max_players
Definition table.h:40
uint64_t enterance_min
Definition table.h:43
pkrsrv_uniqid_uuid_t id
Definition table.h:37
uint64_t small_blind
Definition table.h:39
int offset
Definition table.h:74
int players_count
Definition table.h:64
pkrsrv_uniqid_uuid_t id
Definition table.h:56
void pkrsrv_table_incr_watchers_num(PGconn *pg_conn, pkrsrv_table_t *table, int by)
void pkrsrv_table_list_free(pkrsrv_table_list_t *list)
pkrsrv_table_list_t * pkrsrv_table_get_list__redis(pkrsrv_table_get_list_params_t params)
void pkrsrv_table_set_players_num(PGconn *pg_conn, pkrsrv_table_t *table, int num)
pkrsrv_table_t * pkrsrv_table_get__redis(uint64_t id)
void pkrsrv_table_incr_players_num(PGconn *pg_conn, pkrsrv_table_t *table, int by)
pkrsrv_table_t * pkrsrv_table_new(pkrsrv_table_new_params_t params)
pkrsrv_table_list_t * pkrsrv_table_get_list(PGconn *pg_conn, pkrsrv_table_get_list_params_t params)
pkrsrv_table_t * pkrsrv_table_get(PGconn *pg_conn, uint64_t p_id)
void pkrsrv_table_set_watchers_num(PGconn *pg_conn, pkrsrv_table_t *table, int num)
void pkrsrv_table_free(pkrsrv_table_t *table)
Definition table.h:73
Definition table.h:49
Definition table.h:55
Definition table.h:35
Definition uniqid.h:24