source: trunk/Include/directx9/dmplugin.sbp@ 497

Last change on this file since 497 was 497, checked in by イグトランス (egtra), 16 years ago

インクルードガードとその他不要な前処理定義などの削除

File size: 4.4 KB
Line 
1' dmplugin.sbp - This module contains the API for plugins for the DirectMusic performance layer
2
3Class IDirectMusicTool
4 Inherits IUnknown
5Public
6 'IDirectMusicTool
7 Abstract Function Init(pGraph As *IDirectMusicGraph) As DWord
8 Abstract Function GetMsgDeliveryType(pdwDeliveryType As DWordPtr) As DWord
9 Abstract Function GetMediaTypeArraySize(pdwNumElements As DWordPtr) As DWord
10 Abstract Function GetMediaTypes(padwMediaTypes As **DWord, dwNumElements As DWord) As DWord
11 Abstract Function ProcessPMsg(pPerf As *IDirectMusicPerformance, pPMSG As *DMUS_PMSG) As DWord
12 Abstract Function Flush(pPerf As *IDirectMusicPerformance, pPMSG As *DMUS_PMSG, rtTime As REFERENCE_TIME) As DWord
13End Class
14
15Class IDirectMusicTool8
16 Inherits IDirectMusicTool
17Public
18 'IDirectMusicTool8
19 Abstract Function Clone(ppTool As **IDirectMusicTool) As DWord
20End Class
21
22' The following flags are sent in the IDirectMusicTrack::Play() method inside the dwFlags parameter
23Const Enum DMUS_TRACKF_FLAGS
24 DMUS_TRACKF_SEEK = 1 'set on a seek
25 DMUS_TRACKF_LOOP = 2 'set on a loop (repeat)
26 DMUS_TRACKF_START = 4 'set on first call to Play
27 DMUS_TRACKF_FLUSH = 8 'set when this call is in response to a flush on the perfomance
28 DMUS_TRACKF_DIRTY = &H10 'set when the track should consider any cached values from a previous call to GetParam to be invalidated
29 'The following flags are DX8 only.
30 DMUS_TRACKF_NOTIFY_OFF = &H20 'tells track not to send notifications.
31 DMUS_TRACKF_PLAY_OFF = &H40 'tells track not to play anything (but can still send notifications.)
32 DMUS_TRACKF_LOOPEND = &H80 'set when the end of range is also a loop end.
33 DMUS_TRACKF_STOP = &H100 'set when the end of range is also end of playing this segment.
34 DMUS_TRACKF_RECOMPOSE = &H200 'set to indicate the track should compose.
35 DMUS_TRACKF_CLOCK = &H400 'set when time parameters are in reference (clock) time. Only valid for PlayEx().
36End Enum
37
38' The following flags are sent in the IDirectMusicTrack8::GetParamEx() and SetParamEx() methods
39' inside the dwFlags parameter.
40Const DMUS_TRACK_PARAMF_CLOCK = &H01 'set when the time is measured is in reference (clock) time
41
42Class IDirectMusicTrack
43 Inherits IUnknown
44Public
45 'IDirectMusicTrack
46 Abstract Function Init(pSegment As *IDirectMusicSegment) As DWord
47 Abstract Function InitPlay(pSegmentState As *IDirectMusicSegmentState, pPerformance As *IDirectMusicPerformance, ppStateData As DWordPtr, dwVirtualTrackID As DWord, dwFlags As DWord) As DWord
48 Abstract Function EndPlay(pStateData As VoidPtr) As DWord
49 Abstract Function Play(pStateData As VoidPtr, mtStart As MUSIC_TIME, mtEnd As MUSIC_TIME, mtOffset As MUSIC_TIME, dwFlags As DWord, pPerf As *IDirectMusicPerformance, pSegSt As *IDirectMusicSegmentState, dwVirtualID As DWord) As DWord
50 Abstract Function GetParam(ByRef rguidType As GUID, mtTime As MUSIC_TIME, pmtNext As *MUSIC_TIME, pParam As VoidPtr) As DWord
51 Abstract Function SetParam(ByRef rguidType As GUID, mtTime As MUSIC_TIME, pParam As VoidPtr) As DWord
52 Abstract Function IsParamSupported(ByRef rguidType As GUID) As DWord
53 Abstract Function AddNotificationType(ByRef rguidNotificationType As GUID) As DWord
54 Abstract Function RemoveNotificationType(ByRef rguidNotificationType As GUID) As DWord
55 Abstract Function Clone(mtStart As MUSIC_TIME, mtEnd As MUSIC_TIME, ppTrack As **IDirectMusicTrack) As DWord
56End Class
57
58Class IDirectMusicTrack8
59 Inherits IDirectMusicTrack
60Public
61 'IDirectMusicTrack8
62 Abstract Function PlayEx(pStateData As VoidPtr, rtStart As REFERENCE_TIME, rtEnd As REFERENCE_TIME, rtOffset As REFERENCE_TIME, dwFlags As DWord, pPerf As *IDirectMusicPerformance, pSegSt As *IDirectMusicSegmentState, dwVirtualID As DWord) As DWord
63 Abstract Function GetParamEx(ByRef rguidType As GUID, rtTime As REFERENCE_TIME, prtNext As *REFERENCE_TIME, pParam As VoidPtr, pStateData As VoidPtr, dwFlags As DWord) As DWord
64 Abstract Function SetParamEx(ByRef rguidType As GUID, rtTime As REFERENCE_TIME, pParam As VoidPtr, pStateData As VoidPtr, dwFlags As DWord) As DWord
65 Abstract Function Compose(pContext As *IUnknown, dwTrackGroup As DWord, ppResultTrack As **IDirectMusicTrack) As DWord
66 Abstract Function Join(pNewTrack As *IDirectMusicTrack, mtJoin As MUSIC_TIME, pContext As *IUnknown, dwTrackGroup As DWord, ppResultTrack As **IDirectMusicTrack) As DWord
67End Class
Note: See TracBrowser for help on using the repository browser.