summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/net/server.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/net/server.c b/src/net/server.c
index 959c2aa..8113c11 100644
--- a/src/net/server.c
+++ b/src/net/server.c
@@ -26,6 +26,7 @@ int socket_for_player_id(const socket_list_t *client_socks, const player_id_t pi
/**
* Starts the server. The server will listen on a specified port.
+ * @param[in] addr Bind socket to specified address
* @param[in] port Port on which server should listen
* @return Listening socket
*/
@@ -203,6 +204,11 @@ void server_prep_start_game(msg_t *m)
m->hdr.payload_length = pos;
}
+/**
+ * Prepares hello message to notify client of its assigned id
+ * @param[out] m A preallocated message object to store header and payload information
+ * @param[in] player The player_list_entry_t belonging to the destined client
+ */
void server_prep_hello(msg_t *m, const player_list_entry_t* player)
{
m->hdr.type = msg_type_hello_s;
@@ -210,6 +216,9 @@ void server_prep_hello(msg_t *m, const player_list_entry_t* player)
m->hdr.payload_length = 1;
}
+/**
+ * Send selected stack by current player to client
+ */
void server_prep_selected_stack(msg_t *m)
{
data_store_t *ds = data_store();
@@ -219,6 +228,10 @@ void server_prep_selected_stack(msg_t *m)
m->hdr.payload_length = 1;
}
+/**
+ * Send a hand to a client
+ * @param[in] h The hand for the client
+ */
void server_prep_deal_hand(msg_t *m, const hand_t *h)
{
assert(h != NULL);
@@ -231,6 +244,9 @@ void server_prep_deal_hand(msg_t *m, const hand_t *h)
m->hdr.payload_length = MAX_HAND_CARDS;
}
+/**
+ * Send cards of initial stacks to client at beginning of game.
+ */
void server_prep_initial_stacks(msg_t *m)
{
data_store_t *ds = data_store();
@@ -243,6 +259,9 @@ void server_prep_initial_stacks(msg_t *m)
m->hdr.payload_length = NUM_TABLE_STACKS;
}
+/**
+ * Send all open cards to client
+ */
void server_prep_selected_card_all(msg_t *m)
{
uint8_t pos = 0;
@@ -262,6 +281,9 @@ void server_prep_selected_card_all(msg_t *m)
m->hdr.payload_length = pos;
}
+/**
+ * Notify client whether the game will continue or end
+ */
void server_prep_next_action(msg_t *m)
{
data_store_t *ds = data_store();