# Socket Set Functions
[Sockets and Socket Sets]

## Add, remove, check sockets

These functions allow adding and removing sockets to/from a socket set as well as checking whether a specific socket is part of a socket set.
GWENHYWFAR_API GWEN_ERRORCODE | GWEN_SocketSet_AddSocket (GWEN_SOCKETSET *ssp, const GWEN_SOCKET *sp)
GWENHYWFAR_API int | GWEN_SocketSet_GetSocketCount (GWEN_SOCKETSET *ssp)
GWENHYWFAR_API int | GWEN_SocketSet_HasSocket (GWEN_SOCKETSET *ssp, const GWEN_SOCKET *sp)
GWENHYWFAR_API GWEN_ERRORCODE | GWEN_SocketSet_RemoveSocket (GWEN_SOCKETSET *ssp, const GWEN_SOCKET *sp)

## Creation and destruction

These functions initialize and de-initialize socket sets. A socket set is a group of sockets. They are used for the function GWEN_Socket_Select.
GWENHYWFAR_API GWEN_ERRORCODE | GWEN_SocketSet_Clear (GWEN_SOCKETSET *ssp)
GWENHYWFAR_API void | GWEN_SocketSet_free (GWEN_SOCKETSET *ssp)
GWENHYWFAR_API GWEN_SOCKETSET * | GWEN_SocketSet_new ()

## Detailed Description

These functions operate on socket sets. A socket set is used by the socket function GWEN_Socket_Select() to check on which socket changes in state occurred.

## Function Documentation

GWENHYWFAR_API GWEN_ERRORCODE GWEN_SocketSet_AddSocket | ( | GWEN_SOCKETSET * | ssp,
|  | const GWEN_SOCKET * | sp
| ) |

GWENHYWFAR_API GWEN_ERRORCODE GWEN_SocketSet_Clear | ( | GWEN_SOCKETSET * | ssp | ) |

GWENHYWFAR_API void GWEN_SocketSet_free | ( | GWEN_SOCKETSET * | ssp | ) |

GWENHYWFAR_API int GWEN_SocketSet_GetSocketCount | ( | GWEN_SOCKETSET * | ssp | ) |

GWENHYWFAR_API int GWEN_SocketSet_HasSocket | ( | GWEN_SOCKETSET * | ssp,
|  | const GWEN_SOCKET * | sp
| ) |

GWENHYWFAR_API GWEN_SOCKETSET* GWEN_SocketSet_new | ( |  | ) |

GWENHYWFAR_API GWEN_ERRORCODE GWEN_SocketSet_RemoveSocket | ( | GWEN_SOCKETSET * | ssp,
|  | const GWEN_SOCKET * | sp
| ) |