File: subchannel.cpp

package info (click to toggle)
clanlib 0.5.4-1-6
  • links: PTS
  • area: main
  • in suites: woody
  • size: 10,320 kB
  • ctags: 10,893
  • sloc: cpp: 76,056; xml: 3,281; sh: 2,961; perl: 1,204; asm: 837; makefile: 775
file content (47 lines) | stat: -rw-r--r-- 1,094 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/*
	$Id: subchannel.cpp,v 1.4 2001/03/17 07:29:34 vaidhy Exp $

	------------------------------------------------------------------------
	ClanLib, the platform independent game SDK.

	This library is distributed under the GNU LIBRARY GENERAL PUBLIC LICENSE
	version 2. See COPYING for details.

	For a total list of contributers see CREDITS.

	------------------------------------------------------------------------
*/

#ifdef WIN32
#pragma warning (disable:4786)
#endif

#include "API/Network/subchannel.h"
#include "subchannel_generic.h"

CL_SubChannel::CL_SubChannel(const CL_SubChannel &copy)
: impl(copy.impl)
{
	impl->add_ref();
}

CL_SubChannel::CL_SubChannel(int netchannel)
: impl(new CL_SubChannel_Generic(netchannel))
{
	impl->add_ref();
}

CL_SubChannel::~CL_SubChannel()
{
	if (impl != NULL && impl->release_ref() == 0) delete impl;
}

CL_Slot CL_SubChannel::connect(int subchannel, CL_Slot_v1<const class CL_NetMessage &> *slot)
{
	return impl->connect(subchannel, slot);
}

void CL_SubChannel::disconnect(int subchannel, CL_Slot &slot)
{
	impl->disconnect(subchannel, slot);
}