NS/main/source/common/itrackeruser.h

47 lines
1.4 KiB
C
Raw Normal View History

//========= Copyright <20> 1996-2001, Valve LLC, All rights reserved. ============
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================
#ifndef ITRACKERUSER_H
#define ITRACKERUSER_H
#ifdef _WIN32
#pragma once
#endif
#include "interface.h"
//-----------------------------------------------------------------------------
// Purpose: Interface to accessing information about tracker users
//-----------------------------------------------------------------------------
class ITrackerUser : public IBaseInterface
{
public:
// returns true if the interface is ready for use
virtual bool IsValid() = 0;
// returns the tracker ID of the current user
virtual int GetTrackerID() = 0;
// returns information about a user
// information may not be known about some users, "" will be returned
virtual const char *GetUserName(int trackerID) = 0;
virtual const char *GetFirstName(int trackerID) = 0;
virtual const char *GetLastName(int trackerID) = 0;
virtual const char *GetEmail(int trackerID) = 0;
// returns true if friendID is a friend of the current user
// ie. the current is authorized to see when the friend is online
virtual bool IsFriend(int friendID) = 0;
// requests authorization from a user
virtual void RequestAuthorizationFromUser(int potentialFriendID) = 0;
};
#define TRACKERUSER_INTERFACE_VERSION "TrackerUser001"
#endif // ITRACKERUSER_H