openmohaa/code/gamespy/GP/gpiSearch.h

173 lines
3.6 KiB
C
Raw Permalink Normal View History

2023-02-04 21:00:01 +01:00
/*
gpiSearch.h
GameSpy Presence SDK
Dan "Mr. Pants" Schoenblum
Copyright 1999-2007 GameSpy Industries, Inc
devsupport@gamespy.com
***********************************************************************
Please see the GameSpy Presence SDK documentation for more information
**********************************************************************/
#ifndef _GPISEARCH_H_
#define _GPISEARCH_H_
//INCLUDES
//////////
#include "gpi.h"
//TYPES
///////
#define GPI_SEARCH_PROFILE 1
#define GPI_SEARCH_IS_VALID 2
#define GPI_SEARCH_NICKS 3
#define GPI_SEARCH_PLAYERS 4
#define GPI_SEARCH_CHECK 5
#define GPI_SEARCH_NEWUSER 6
#define GPI_SEARCH_OTHERS_BUDDY 7
#define GPI_SEARCH_SUGGEST_UNIQUE 8
#define GPI_SEARCH_OTHERS_BUDDY_LIST 9
#define GPI_SEARCH_PROFILE_UNIQUENICK 10
// A timeout used to abort searches taking too long
#define GPI_SEARCH_TIMEOUT 60000
// Profile Search operation data.
/////////////////////////////////
typedef struct
{
int type;
SOCKET sock;
GPIBuffer inputBuffer;
GPIBuffer outputBuffer;
char nick[GP_NICK_LEN];
char uniquenick[GP_UNIQUENICK_LEN];
int namespaceIDs[GP_MAX_NAMESPACEIDS];
int numNamespaces;
char email[GP_EMAIL_LEN];
char firstname[GP_FIRSTNAME_LEN];
char lastname[GP_LASTNAME_LEN];
char password[GP_PASSWORD_LEN];
char cdkey[GP_CDKEY_LEN];
int partnerID;
int icquin;
int skip;
int productID;
GPIBool processing;
GPIBool remove;
gsi_time searchStartTime;
int *revBuddyProfileIds;
int numOfRevBuddyProfiles;
} GPISearchData;
//FUNCTIONS
///////////
GPResult
gpiProfileSearch(
GPConnection * connection,
const char nick[GP_NICK_LEN],
const char uniquenick[GP_UNIQUENICK_LEN],
const char email[GP_EMAIL_LEN],
const char firstname[GP_FIRSTNAME_LEN],
const char lastname[GP_LASTNAME_LEN],
int icquin,
int skip,
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult
gpiProfileSearchUniquenick(
GPConnection * connection,
const char uniquenick[GP_UNIQUENICK_LEN],
const int namespaceIDs[],
int numNamespaces,
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult
gpiIsValidEmail(
GPConnection * connection,
const char email[GP_EMAIL_LEN],
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult
gpiGetUserNicks(
GPConnection * connection,
const char email[GP_EMAIL_LEN],
const char password[GP_PASSWORD_LEN],
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult
gpiFindPlayers(
GPConnection * connection,
int productID,
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult gpiCheckUser(
GPConnection * connection,
const char nick[GP_NICK_LEN],
const char email[GP_EMAIL_LEN],
const char password[GP_PASSWORD_LEN],
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult gpiNewUser(
GPConnection * connection,
const char nick[GP_NICK_LEN],
const char uniquenick[GP_UNIQUENICK_LEN],
const char email[GP_EMAIL_LEN],
const char password[GP_PASSWORD_LEN],
const char cdkey[GP_CDKEY_LEN],
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult gpiOthersBuddy(
GPConnection * connection,
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult gpiOthersBuddyList(
GPConnection * connection,
int *profiles,
int numOfProfiles,
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult gpiSuggestUniqueNick(
GPConnection * connection,
const char desirednick[GP_NICK_LEN],
GPEnum blocking,
GPCallback callback,
void * param
);
GPResult
gpiProcessSearches(
GPConnection * connection
);
#endif