Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/proxy/src/lib/network/netdefs.h @ 9300

Last change on this file since 9300 was 9300, checked in by patrick, 18 years ago

work from this weekend in the train :D

  • the ip should now synchronize over network in the handshake (always the favorite 2 proxy server ips)
  • the network monitor now keeps track of all network nodes answers with proxy server lists if asked/needed
  • it is untested :D
File size: 1.7 KB
Line 
1/*
2   orxonox - the future of 3D-vertical-scrollers
3
4   Copyright (C) 2004 orx
5
6   This program is free software; you can redistribute it and/or modify
7   it under the terms of the GNU General Public License as published by
8   the Free Software Foundation; either version 2, or (at your option)
9   any later version.
10
11### File Specific:
12   main-programmer: Christoph Renner rennerc@ee.ethz.ch
13   co-programmer:   Patrick Boenzli  boenzlip@orxonox.ethz.ch
14
15     June 2006: finishing work on the network stream for pps presentation (rennerc@ee.ethz.ch)
16     July 2006: some code rearangement and integration of the proxy server mechanism (boenzlip@ee.ethz.ch)
17*/
18
19/*!
20 * @file network_manager.h
21 *  Main interface for the network module. Manages all the modules
22
23 */
24
25#ifndef _NETDEFS
26#define _NETDEFS
27
28#ifdef HAVE_SDL_NET_H
29  #include <SDL_net.h>
30#else
31  #include <SDL/SDL_net.h>
32#endif
33
34
35//!< maximal connectinons for the server
36#define NET_MAX_CONNECTIONS 5
37
38//!< the amount of slots used before a proxy server is activated
39#define NET_CONNECTION_SATURATION 0.75
40
41//!< network polling frequency
42#define NETWORK_FREQUENCY 66
43
44
45//!< orxonox protocol id
46#define _ORXONOX_ID        0xF91337A0
47//!< orxonox network version identifier
48#define _ORXONOX_VERSION   1
49
50
51typedef unsigned char byte;
52
53
54//!< enum indicating the type of the node
55typedef enum {
56  NET_MASTER_SERVER,
57  NET_PROXY_SERVER,
58  NET_CLIENT,
59
60  NET_NR_TYPES
61
62} NodeType;
63
64//!< enum indicating the type of the network connection (2 protocols supported)
65typedef enum ConnectionType {
66  NET_UDP = 0,
67  NET_TCP
68};
69
70//!< the type of the user id (special number never used elsewhere)
71typedef enum {
72  NET_UID_UNASSIGNED = -1,
73
74  NET_UID_NUMBER
75} UidType;
76
77#endif /* _NETWORK_MANAGER */
Note: See TracBrowser for help on using the repository browser.