147 lines
3.6 KiB
C
147 lines
3.6 KiB
C
/***********************************************************************
|
|
** M S T V . H *
|
|
** *
|
|
************************************************************************
|
|
** Copyright (C) 1996 - 1999 Microsoft Corporation *
|
|
** All Rights Reserved *
|
|
************************************************************************/
|
|
/*
|
|
|
|
MSTV.H
|
|
|
|
Class definitions for CommMSTV SDK.
|
|
|
|
This is a part of the Microsoft TV SDK library.
|
|
See the TODO.hlp file for detailed information regarding the
|
|
Microsoft TV SDK product.
|
|
|
|
*/
|
|
|
|
#ifndef _MSTV_H_
|
|
#pragma option push -b -a8 -pc -A- /*P_O_Push*/
|
|
#define _MSTV_H_
|
|
|
|
|
|
// Disable export declaration for third party compilation
|
|
#ifdef DLLEXPORT
|
|
#undef DLLEXPORT // as nothing
|
|
#endif
|
|
|
|
#ifdef DONTUSEDLLDECLSPEC
|
|
|
|
#define COMMMSTVEXPORT
|
|
|
|
#else
|
|
|
|
#ifdef BUILDCOMMMSTV
|
|
#define COMMMSTVEXPORT __declspec ( dllexport )
|
|
#else
|
|
#define COMMMSTVEXPORT __declspec ( dllimport )
|
|
#endif
|
|
|
|
#endif // DONTUSEDLLDECLSPEC
|
|
|
|
// Defines for Database in-memory structs
|
|
#define MAX_CALLLETTERS 10
|
|
#define MAX_TITLE 256
|
|
#define MAX_DESCRIPTION 1024
|
|
#define MAX_LOGOMONIKER 1024
|
|
|
|
typedef struct tagCHANNEL_INFO
|
|
{
|
|
LONG lChannelID;
|
|
LONG lTuningSpace;
|
|
LONG lChannelNumber;
|
|
LONG lNetworkID;
|
|
LONG lRatingID;
|
|
LONG lDisplayMask;
|
|
LONG lPaymentAddress;
|
|
LONG lPaymentToken;
|
|
LONG lLength;
|
|
DATE StartTime;
|
|
DATE EndTime;
|
|
DATE LastUpdate;
|
|
TCHAR szCallLetters[MAX_CALLLETTERS];
|
|
TCHAR szDescription[MAX_DESCRIPTION];
|
|
TCHAR szNetworkName[MAX_CALLLETTERS];
|
|
TCHAR szNetworkLogoMoniker[MAX_LOGOMONIKER];
|
|
BOOL fTunable;
|
|
} CHANNEL_INFO;
|
|
|
|
#define CONTINUOUS_EPISODE 0
|
|
|
|
// lRepetition below is set to one of these values if Episode is a representation
|
|
// of a reminder
|
|
#define REMIND_NONE 0
|
|
#define REMIND_ONCE 1
|
|
#define REMIND_DAILY 2
|
|
#define REMIND_WEEKLY 3
|
|
#define REMIND_WEEKDAYS 4
|
|
#define REMIND_MAX 4
|
|
|
|
#define TUNING_DEFAULT 0
|
|
|
|
|
|
#define VIRTUAL_TUNINGSPACE(a) (a < 0 ? TRUE : FALSE )
|
|
|
|
typedef struct tagTUNING_INFO
|
|
{
|
|
LONG lTuningSpace;
|
|
LONG lChannelNumber;
|
|
LONG lVideoStream;
|
|
LONG lAudioStream;
|
|
BSTR bsIPStream; // xxx.xxx.xxx.xxx
|
|
TCHAR szCallLetters[MAX_CALLLETTERS];
|
|
} TUNING_INFO;
|
|
|
|
|
|
|
|
// General error domains
|
|
|
|
#define ERRDOM_DB 0x010000
|
|
#define ERRDOM_FILE 0x020000
|
|
#define ERRDOM_MEMORY 0x040000
|
|
#define ERRDOM_TIMING 0x080000 // issue may go away if we just retry a few seconds later
|
|
#define ERRDOM_STATE 0x0F0000
|
|
#define ERRDOM_INSTALL 0x100000 // something missing from the install
|
|
|
|
#define ERRDOM_OTHER 0xFF0000 // miscellaneous
|
|
|
|
|
|
// General error codes
|
|
|
|
#define ERR_SUCCEEDED 0x00000000
|
|
|
|
// database errors
|
|
#define ERR_NULL_CHANNEL_LIST (ERRDOM_DB | 0x0001) // chanlist null
|
|
#define ERR_EPISODE_RS_FAILED (ERRDOM_DB | 0x0002) // openRecordSet for Episode failed
|
|
|
|
// file errors
|
|
|
|
|
|
// memory errors
|
|
|
|
|
|
// timing errors
|
|
|
|
|
|
// state errors
|
|
#define ERR_NULL_TVXDOC (ERRDOM_STATE | 0x0001) // CTvxDoc not initialized yet
|
|
#define ERR_IN_MODAL_STATE (ERRDOM_STATE | 0x0002) // Modal dlg is up
|
|
|
|
|
|
// installation errors
|
|
#define ERR_FILE_MSVIDEO_MISSING (ERRDOM_INSTALL | 0x0001) // msvideo.htm is missing
|
|
#define ERR_FILE_NODEVICE_MISSING (ERRDOM_INSTALL | 0x0002) // nodevice.htm is missing
|
|
#define ERR_FILE_MSGUIDE_MISSING (ERRDOM_INSTALL | 0x0003) // msguide.htm is missing
|
|
|
|
|
|
// misc
|
|
#define ERR_CANT_NAVIGATE (ERRDOM_OTHER | 0x0001) // IWebBrowser::Navigate() failed
|
|
#define ERR_CHANNEL_DNE (ERRDOM_OTHER | 0x0002) // specified channel does not exists
|
|
|
|
#pragma option pop /*P_O_Pop*/
|
|
#endif // _MSTV_H_
|
|
|
|
|