home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / include / devtype.h < prev    next >
Text File  |  1998-04-25  |  12KB  |  338 lines

  1. // devtype.h : definitions for vidsvr.odl
  2. // Copyright (c) Microsoft Corporation 1995-1997.
  3. //
  4. #ifdef __cplusplus
  5. # define odlhelp(x)
  6. # define odlhelp2(x, y)
  7. #else
  8. # define odlhelp(x) [ helpstring(x)]
  9. # define odlhelp2(x, y) [ x, y ]
  10. #endif
  11. // these device type elements are built into the ODL and are used to construct
  12. // the DeviceType property
  13.  
  14. #ifdef __MKTYPLIB__
  15.  
  16. #include <dssenum.h>
  17.  
  18.         // these are the string resource id numbers in the vidsvr
  19.         // for the progid strings
  20.         typedef enum BpcVidsvrProgIds {
  21.             BPC_IDS_VIDSVR_PROGID = 2100,
  22.             BPC_IDS_COABPCDETAILS_PROGID = 2101,
  23.         } BpcVidsvrProgIds;
  24.  
  25.  
  26.         typedef enum statustype {
  27. //          STATUS_POWER        = 0x01,
  28.             STATUS_PLAY         = 0x02,
  29. //          STATUS_THISPLAY     = 0x04,
  30.             STATUS_PAUSED       = 0x08,
  31. //          STATUS_AUDIO        = 0x10,
  32. //          STATUS_VIDEO        = 0x20,
  33. //          STATUS_RECORDING    = 0x40,
  34.             STATUS_ACTIVE       = 0x80, // set when we're input or output
  35.         } STATUSTYPE;
  36.  
  37. #if 0
  38. // reserved for future use
  39.         typedef enum ircommands {
  40.             IR_PLAY = 1,
  41.             IR_STOP = 2,
  42.             IR_PAUSE = 3,
  43.             IR_UNPAUSE = 4,
  44.             IR_RECORD = 5,
  45.             IR_REWIND = 6,
  46.             IR_FASTFORWARD = 7,
  47.             IR_SETCHANNEL = 8,
  48.             IR_TOGGLEPOWER = 9,
  49.             IR_POWERON = 10,
  50.             IR_POWEROFF = 11
  51.         } IRCOMMANDS;
  52.  
  53.     // these values must match those in quartzsrc\ui\controls\litevid\dispids.h
  54.     typedef odlhelp2 (
  55.         uuid(05589fa4-c356-11ce-bf01-00aa0055595a),
  56.         helpstring("Event Notification Flags")
  57.     ) enum
  58.     {
  59.         odlhelp("No Event Notification") eventNone              = 0x00,
  60.         odlhelp("State Changes (default)") eventStateChange     = 0x01,
  61.         odlhelp("Position Changes") eventPositionChange         = 0x02,
  62.         odlhelp("Timer events") eventTimer                      = 0x04,
  63.         odlhelp("Keyboard Events") eventKeyboard                = 0x08,
  64.         odlhelp("Mouse Clicks") eventMouseClick                 = 0x10,
  65.         odlhelp("Mouse Moves") eventMouseMove                   = 0x20
  66.     } EventNotificationFlags;
  67. #endif
  68.  
  69.     typedef odlhelp2 (
  70.         uuid(05589faa-c356-11ce-bf01-00aa0055595a),
  71.         helpstring("Movie Window Settings")
  72.    ) enum
  73.     {
  74.         odlhelp("Default Size") movieDefaultSize,
  75.         odlhelp("Half Size") movieHalfSize,
  76.         odlhelp("Double Size") movieDoubleSize,
  77.         odlhelp("Maximum Size") movieMaximizeSize,
  78.         odlhelp("Full Screen") movieFullScreen,
  79.         odlhelp("User Defined (enforce Aspect Ratio)") moviePermitResizeWithAspect,
  80.         odlhelp("User Defined (ignore Aspect Ratio)") moviePermitResizeNoRestrict
  81.     } MovieWindowSetting;
  82.  
  83.  
  84.     typedef odlhelp2(
  85.         uuid(05589fab-c356-11ce-bf01-00aa0055595a),
  86.         helpstring("State of Movie Clip")
  87.     ) enum
  88.     {
  89.         // These values MUST be the same as the State_ constants in quartz\sdk\include\strmif.h
  90.         odlhelp("Movie is stopped") stateStopped,
  91.         odlhelp("Movie is paused") statePaused,
  92.         odlhelp("Movie is running") stateRunning
  93.     } State;
  94.  
  95.  
  96.     typedef odlhelp2(
  97.         uuid(05589fac-c356-11ce-bf01-00aa0055595a),
  98.         helpstring("Display Mode")
  99.     ) enum
  100.     {
  101.         odlhelp("Time") modeTime,
  102.         odlhelp("Frames") modeFrames
  103.     } DisplayMode;
  104. #endif
  105. // mktyplib won't allow an enum to define disp ids
  106. // vid ids
  107. #define dispidPower      1008
  108. #define dispidStartTime  1002
  109. #define dispidStopTime   1003
  110. #define dispidVideoOn    1004
  111. #define dispidClosedCaption     1005
  112. #define dispidDebug             1006
  113. #define dispidEventNotification 1007
  114. #define dispidDeviceCount       1001
  115. #define dispidDisplayMode       1025
  116. #define dispidInput     1020
  117. #define dispidOutput    1021
  118. #define dispidColorKey  1012
  119. #define dispidFileName  1013
  120. #define dispidPriority  1014
  121. #define dispidUserName  1015
  122. #define dispidLogin     1016
  123. #define dispidVolume    1017
  124. #define dispidBalance   1018
  125. #define dispidImageSourceHeight  1019
  126. #define dispidImageSourceWidth   1010
  127. #define dispidMovieWindowSetting 1011
  128. #define dispidCurrentState       1022
  129. #define dispidCurrentPosition    1023
  130. #define dispidDuration           1024
  131. #define dispidPrerollTime        1009
  132. #define dispidRate               1026
  133. #define dispidLocaleID           1027
  134. #define dispidRun                1028
  135. #define dispidPause              1029
  136. #define dispidStop               1030
  137. #define dispidClose              1031
  138. #define dispidOpen               1032
  139. #define dispidDevices            1033
  140. #define dispidControlling        1034
  141. #define dispidTune               1035
  142. #define dispidTSDevCount         1036
  143. #define dispidLogout             1037
  144. #define dispidAutoScan           1038
  145.  
  146.         // Vid events
  147. #define eventidGotControl     1001
  148. #define eventidLostControl    1002
  149. #define eventidDeviceMessage  1003
  150. #define eventidStateChange    1004
  151. #define eventidPositionChange 1005
  152. #define eventidErrorMessage   1006
  153.         //DeviceBase methods&props
  154. #define dispidName         1001
  155. #define dispidIsInput      1002
  156. #define dispidIsOutput     1003
  157. #define dispidHasChannel   1004
  158. #define dispidHasFilename  1005
  159. #define dispidDeviceType   1006
  160. #define dispidStatus       1007
  161. #define dispidProdName     1008
  162. #define dispidDevFileName  1009
  163. #define dispidChannel      1010
  164. #define dispidSendMessage  1011
  165. #define dispidCommand      1012
  166. #define dispidChannelAvailable  1013
  167. #define dispidCommandAvailable  1014
  168. #define dispidDevImageSourceWidth   1015
  169. #define dispidDevImageSourceHeight  1016
  170. #define dispidDevCurrentPosition    1017
  171. #define dispidDevDuration           1018
  172. #define dispidDevPrerollTime        1019
  173. #define dispidDevRate               1020
  174. #define dispidDevCountryCode        1021
  175. #define dispidDevVideoFrequency     1022
  176. #define dispidDevAudioFrequency     1023
  177. #define dispidDevDefaultVideoType   1024
  178. #define dispidDevDefaultAudioType   1025
  179. #define dispidDevVideoSubchannel    1026
  180. #define dispidDevAudioSubchannel    1027
  181. #define dispidDevTuningSpace        1028
  182. #define dispidStatusString      1030
  183. #define dispidDevVolume         1031
  184. #define dispidDevBalance        1032
  185. #define dispidActivate          1033
  186. #define dispidDeActivate        1034
  187. #define dispidDevPower          1035
  188. #define dispidDevRun            1036
  189. #define dispidDevStop           1037
  190. #define dispidDevPause          1038
  191. #define dispidDevRefresh        1039
  192. #define dispidHasCA             1040
  193. #define dispidDevVideoOn        1041
  194. #define dispidDevCurrentState   1042
  195. #define dispidDevOverScan       1043
  196. //
  197. #define dispidItem              1500
  198. #define dispidCount             1501
  199. #define dispidHWnd              1502
  200. #define dispidLCID              1503
  201. #define dispidNotify            1504
  202. #define dispidDevControlling    1505
  203. #define dispidDevColorKey       1506
  204. #define dispidDevPriority       1507
  205. #define dispidDevInput          1508
  206. #define dispidDevOutput         1509
  207. #define dispidDevTune           1510
  208. #define dispidDevTSDevCount     1511
  209. #define dispidDevOpen           1512
  210. #define dispidDevLogin          1513
  211. #define dispidDevLogout         1514
  212. #define dispidDevAutoScan       1515
  213. // NOTE:  !!!! these must match the odl for the caserver(caserver.odl)
  214. // don't change these without considering the impact on existing code
  215. // normally you should not delete, rename, or reuse any of these.  you should
  216. // add new ones and stop using the old ones while leaving them in place marked
  217. // as obsolete.
  218.  
  219. // These symbols are #defined because mktyplib doesn't understand
  220. // enum.  if we convert completely to midl then we could  change all
  221. // of these to enums which would be more type safe for authors
  222. // of provider specific dll's
  223.  
  224.  
  225. // IBPCDetails interface
  226. #define OABPCDETID_Channel        (1401)
  227. #define OABPCDETID_StartTime      (1402)
  228. #define OABPCDETID_Duration       (1403)
  229. #define OABPCDETID_ItemID         (1404)
  230. #define OABPCDETID_StorageId      (1405)
  231. #define OABPCDETID_Title          (1406)
  232. #define OABPCDETID_Rating         (1407)
  233. #define OABPCDETID_Year           (1408)
  234. #define OABPCDETID_Description    (1409)
  235. #define OABPCDETID_ViewCost       (1410)
  236. #define OABPCDETID_TapeCost       (1411)
  237. #define OABPCDETID_Action         (1412)
  238. #define OABPCDETID_Status         (1413)
  239. #define OABPCDETID_Reason         (1414)
  240. #define OABPCDETID_ReasonDesc     (1415)
  241. #define OABPCDETID_ProviderBuffer (1416)
  242. #define OABPCDETID_Expiry         (1417)
  243. #define OABPCDETID_Location       (1418)
  244. #define OABPCDETID_UserId         (1419)
  245.  
  246. // CAServer Interface
  247. #define CASERVERID_ResetProviderSystem (1301)
  248. #define CASERVERID_BuyItem             (1302)
  249. #define CASERVERID_CancelItem          (1303)
  250. #define CASERVERID_ItemDetails         (1304)
  251. #define CASERVERID_ProviderEPGMask     (1305)
  252. #define CASERVERID_DisplayConfigDialog (1306)
  253. #define CASERVERID_UserName            (1307)
  254. #define CASERVERID_UserArea            (1308)
  255. #define CASERVERID_ProviderRating      (1309)
  256. #define CASERVERID_ProviderStatus      (1310)
  257. #define CASERVERID_ShowBox             (1311)
  258. #define CASERVERID_HistoryItems        (1312)
  259. #define CASERVERID_EmailMessages       (1313)
  260. #define CASERVERID_ErrorMessages       (1314)
  261. #define CASERVERID_HandleCardChaining  (1315)
  262.  
  263. // CAEvent Interface
  264. // message event
  265. #define CAEVENTID_CardMissing         (1201)
  266. #define CAEVENTID_CardReady           (1202)
  267. #define CAEVENTID_CardInvalid         (1203)
  268. #define CAEVENTID_WrongCard           (1204)
  269. #define CAEVENTID_BlackedOut          (1205)
  270. #define CAEVENTID_RatingExceeded      (1206)
  271. #define CAEVENTID_CostExceeded        (1207)
  272. #define CAEVENTID_NotReady            (1208)
  273. #define CAEVENTID_PasswordCleared     (1209)
  274. #define CAEVENTID_SignalLost          (1210)
  275. #define CAEVENTID_IntegrityFault      (1211)
  276. #define CAEVENTID_OSDRequest          (1212)
  277. // notifications
  278. #define CAEVENTID_NewEmail            (1213)
  279. #define CAEVENTID_NewCard             (1214)
  280. #define CAEVENTID_ColdStart           (1215)
  281. #define CAEVENTID_Ready               (1216)
  282. #define CAEVENTID_CannotPurchase      (1217)
  283. #define CAEVENTID_NoSubscriber        (1218)
  284. #define CAEVENTID_CAFault             (1219)
  285. #define CAEVENTID_CAFail              (1220)
  286. #define CAEVENTID_CASuccess           (1221)
  287. #define CAEVENTID_Retry               (1222)
  288. #define CAEVENTID_Fail                (1223)
  289. #define CAEVENTID_TuningChanged       (1224)
  290. #define CAEVENTID_MessagesUpdated     (1233)
  291. #define CAEVENTID_HistoryUpdated      (1234)
  292. // special
  293. #define CAEVENTID_TapingControlChanged (1225)
  294. #define CAEVENTID_EPGGuideChanged     (1226)
  295. #define CAEVENTID_HandlePurchaseOffer (1227)
  296. #define CAEVENTID_RevokeEvent         (1228)
  297. #define CAEVENTID_BillingCallStart    (1229)
  298. #define CAEVENTID_BillingCallEnd      (1230)
  299. #define CAEVENTID_CopyCard            (1231)
  300. #define CAEVENTID_EPGFilterChanged    (1232)
  301. #define CAEVENTID_CallbackFailed      (1235)
  302.  
  303. #define MSGID_Attributes              (1800)
  304. #define MSGID_Message                 (1801)
  305.  
  306. #define EMSGID_MsgId                              (2000)
  307. #define EMSGID_UserId                             (2001)
  308. #define EMSGID_Received                           (2002)
  309. #define EMSGID_Expires                            (2003)
  310. #define EMSGID_Title                              (2004)
  311. #define EMSGID_Message                            (2005)
  312. #define EMSGID_Read                               (2006)
  313.  
  314. #define SUSPEND_DeviceRelease                     (2100)
  315. //#define VCTL_VBITune                              (2101)
  316. //#define VCTL_VBIStatus                            (2102)
  317.  
  318.  
  319.  
  320. //all the collection interfaces
  321.  
  322. #define COLLECTID_Item     (0)
  323. #define COLLECTID_Count    (1)
  324. #define COLLECTID_Remove   (2)
  325. #define COLLECTID_MarkRead (3)
  326.  
  327. // this is a standard system defined dispatch id
  328. // however, due to the turmoil involved in midl vs. mktyplib
  329. // and vc 4.1's poor support for OLE i can't include
  330. // oaidl.h where this is defined and get a clean compile
  331. // therefore i'm redefining it here.  this should be removed
  332. // someday(hopefully vc4.2, maybe vc 5.0)
  333. #ifndef DISPID_NEWENUM
  334. #define DISPID_NEWENUM   (-4)
  335. #endif
  336.  
  337. // end of file - devtype.h
  338.