summaryrefslogtreecommitdiff
path: root/utils/vmpi/messagemgr.h
blob: cebbe76ac138d45bdd2e7c4a513f7ab8c4fd5d28 (plain) (blame)
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
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose: 
//
// $NoKeywords: $
//=============================================================================//

#ifndef MESSAGEMGR_H
#define MESSAGEMGR_H
#ifdef _WIN32
#pragma once
#endif


#define MSGMGR_VERSION						52314
#define MSGMGR_BROADCAST_PORT				22511

#define MSGMGR_PACKETID_MSG					0
#define MSGMGR_PACKETID_ANNOUNCE_PRESENCE	1	// followed by version # and port


// IMessageMgr provides a simple interface apps can use to generate output. Apps
// on the network can connect to the messagemgr to get its output and display it.
class IMessageMgr
{
public:
	virtual bool	Init() = 0;
	virtual void	Term() = 0;

	virtual void	Print( const char *pMsg ) = 0;
};


// Get the message manager. It's a global singleton so this will always
// return the same value (null if the manager can't initialize).
IMessageMgr* GetMessageMgr();


#endif // MESSAGEMGR_H