您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ ICOM_THIS_MULTI函数代码示例

51自学网 2021-06-01 21:27:39
  C++
这篇教程C++ ICOM_THIS_MULTI函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中ICOM_THIS_MULTI函数的典型用法代码示例。如果您正苦于以下问题:C++ ICOM_THIS_MULTI函数的具体用法?C++ ICOM_THIS_MULTI怎么用?C++ ICOM_THIS_MULTI使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了ICOM_THIS_MULTI函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: IDirectMusicBandImpl_IDirectMusicBand_QueryInterface

/* IDirectMusicBandImpl IDirectMusicBand part: */static HRESULT WINAPI IDirectMusicBandImpl_IDirectMusicBand_QueryInterface (LPDIRECTMUSICBAND iface, REFIID riid, LPVOID *ppobj) {	ICOM_THIS_MULTI(IDirectMusicBandImpl, BandVtbl, iface);	return IUnknown_QueryInterface ((LPUNKNOWN)&This->UnknownVtbl, riid, ppobj);}
开发者ID:howard5888,项目名称:wineT,代码行数:5,


示例2: IDirectMusicChordMapTrack_IDirectMusicTrack_RemoveNotificationType

static HRESULT WINAPI IDirectMusicChordMapTrack_IDirectMusicTrack_RemoveNotificationType (LPDIRECTMUSICTRACK8 iface, REFGUID rguidNotificationType) {	ICOM_THIS_MULTI(IDirectMusicChordMapTrack, TrackVtbl, iface);	FIXME("(%p, %s): stub/n", This, debugstr_dmguid(rguidNotificationType));	return S_OK;}
开发者ID:DeltaYang,项目名称:wine,代码行数:5,


示例3: IDirectMusicChordMapTrack_IDirectMusicTrack_PlayEx

static HRESULT WINAPI IDirectMusicChordMapTrack_IDirectMusicTrack_PlayEx (LPDIRECTMUSICTRACK8 iface, void* pStateData, REFERENCE_TIME rtStart, REFERENCE_TIME rtEnd, REFERENCE_TIME rtOffset, DWORD dwFlags, IDirectMusicPerformance* pPerf, IDirectMusicSegmentState* pSegSt, DWORD dwVirtualID) {	ICOM_THIS_MULTI(IDirectMusicChordMapTrack, TrackVtbl, iface);	FIXME("(%p, %p, 0x%s, 0x%s, 0x%s, %d, %p, %p, %d): stub/n", This, pStateData, wine_dbgstr_longlong(rtStart),	    wine_dbgstr_longlong(rtEnd), wine_dbgstr_longlong(rtOffset), dwFlags, pPerf, pSegSt, dwVirtualID);	return S_OK;}
开发者ID:DeltaYang,项目名称:wine,代码行数:6,


示例4: IDirectMusicChordMapTrack_IDirectMusicTrack_InitPlay

static HRESULT WINAPI IDirectMusicChordMapTrack_IDirectMusicTrack_InitPlay (LPDIRECTMUSICTRACK8 iface, IDirectMusicSegmentState* pSegmentState, IDirectMusicPerformance* pPerformance, void** ppStateData, DWORD dwVirtualTrack8ID, DWORD dwFlags) {	ICOM_THIS_MULTI(IDirectMusicChordMapTrack, TrackVtbl, iface);	FIXME("(%p, %p, %p, %p, %d, %d): stub/n", This, pSegmentState, pPerformance, ppStateData, dwVirtualTrack8ID, dwFlags);	return S_OK;}
开发者ID:DeltaYang,项目名称:wine,代码行数:5,


示例5: IDirectMusicChordMapTrack_IDirectMusicTrack_Play

static HRESULT WINAPI IDirectMusicChordMapTrack_IDirectMusicTrack_Play (LPDIRECTMUSICTRACK8 iface, void* pStateData, MUSIC_TIME mtStart, MUSIC_TIME mtEnd, MUSIC_TIME mtOffset, DWORD dwFlags, IDirectMusicPerformance* pPerf, IDirectMusicSegmentState* pSegSt, DWORD dwVirtualID) {	ICOM_THIS_MULTI(IDirectMusicChordMapTrack, TrackVtbl, iface);	FIXME("(%p, %p, %d, %d, %d, %d, %p, %p, %d): stub/n", This, pStateData, mtStart, mtEnd, mtOffset, dwFlags, pPerf, pSegSt, dwVirtualID);	return S_OK;}
开发者ID:DeltaYang,项目名称:wine,代码行数:5,


示例6: IDirectMusicStyle8Impl_IPersistStream_ParsePatternList

static HRESULT IDirectMusicStyle8Impl_IPersistStream_ParsePatternList (LPPERSISTSTREAM iface, DMUS_PRIVATE_CHUNK* pChunk, IStream* pStm) {  ICOM_THIS_MULTI(IDirectMusicStyle8Impl, PersistStreamVtbl, iface);  HRESULT hr = E_FAIL;  DMUS_PRIVATE_CHUNK Chunk;  DWORD ListSize[3], ListCount[3];  LARGE_INTEGER liMove; /* used when skipping chunks */  DMUS_OBJECTDESC desc;  IDirectMusicBand* pBand = NULL;  LPDMUS_PRIVATE_STYLE_MOTIF pNewMotif = NULL;  DM_STRUCT_INIT(&desc);  if (pChunk->fccID != DMUS_FOURCC_PATTERN_LIST) {    ERR_(dmfile)(": %s chunk should be a PATTERN list/n", debugstr_fourcc (pChunk->fccID));    return E_FAIL;  }    ListSize[0] = pChunk->dwSize - sizeof(FOURCC);  ListCount[0] = 0;  do {    IStream_Read (pStm, &Chunk, sizeof(FOURCC)+sizeof(DWORD), NULL);    ListCount[0] += sizeof(FOURCC) + sizeof(DWORD) + Chunk.dwSize;    TRACE_(dmfile)(": %s chunk (size = %d)", debugstr_fourcc (Chunk.fccID), Chunk.dwSize);    switch (Chunk.fccID) {    case DMUS_FOURCC_PATTERN_CHUNK: {      TRACE_(dmfile)(": Pattern chunk/n");      /** alloc new motif entry */      pNewMotif = HeapAlloc (GetProcessHeap (), HEAP_ZERO_MEMORY, sizeof(DMUS_PRIVATE_STYLE_MOTIF));      if (NULL == pNewMotif) {	ERR(": no more memory/n");	return  E_OUTOFMEMORY;      }      list_add_tail (&This->Motifs, &pNewMotif->entry);      IStream_Read (pStm, &pNewMotif->pattern, Chunk.dwSize, NULL);      /** TODO trace pattern */      /** reset all data, as a new pattern begin */      DM_STRUCT_INIT(&pNewMotif->desc);      list_init (&pNewMotif->Items);      break;    }    case DMUS_FOURCC_RHYTHM_CHUNK: {       TRACE_(dmfile)(": Rhythm chunk/n");      IStream_Read (pStm, &pNewMotif->dwRhythm, sizeof(DWORD), NULL);      TRACE_(dmfile)(" - dwRhythm: %u/n", pNewMotif->dwRhythm);      /** TODO understand why some Chunks have size > 4 */      liMove.QuadPart = Chunk.dwSize - sizeof(DWORD);      IStream_Seek (pStm, liMove, STREAM_SEEK_CUR, NULL);      break;    }    case DMUS_FOURCC_MOTIFSETTINGS_CHUNK: {      TRACE_(dmfile)(": MotifSettings chunk (skipping for now)/n");      IStream_Read (pStm, &pNewMotif->settings, Chunk.dwSize, NULL);      /** TODO trace settings */      break;    }    case FOURCC_RIFF: {      /**       * should be embedded Bands into pattern       */      IStream_Read (pStm, &Chunk.fccID, sizeof(FOURCC), NULL);      TRACE_(dmfile)(": RIFF chunk of type %s", debugstr_fourcc(Chunk.fccID));      ListSize[1] = Chunk.dwSize - sizeof(FOURCC);      ListCount[1] = 0;      switch (Chunk.fccID) {      case DMUS_FOURCC_BAND_FORM: { 	LPSTREAM pClonedStream = NULL;		TRACE_(dmfile)(": BAND RIFF/n");		IStream_Clone (pStm, &pClonedStream);		liMove.QuadPart = 0;	liMove.QuadPart -= sizeof(FOURCC) + (sizeof(FOURCC)+sizeof(DWORD));	IStream_Seek (pClonedStream, liMove, STREAM_SEEK_CUR, NULL);		hr = IDirectMusicStyle8Impl_IPersistStream_LoadBand (iface, pClonedStream, &pBand);	if (FAILED(hr)) {	  ERR(": could not load track/n");	  return hr;	}	IStream_Release (pClonedStream);		pNewMotif->pBand = pBand;	IDirectMusicBand_AddRef(pBand);	IDirectMusicTrack_Release(pBand); pBand = NULL;  /* now we can release it as it's inserted */		/** now safe move the cursor */	liMove.QuadPart = ListSize[1];	IStream_Seek (pStm, liMove, STREAM_SEEK_CUR, NULL);		break;      }      default: {	TRACE_(dmfile)(": unknown chunk (irrelevant & skipping)/n");//.........这里部分代码省略.........
开发者ID:Dimillian,项目名称:wine,代码行数:101,


示例7: IDirectMusicStyle8Impl_IDirectMusicStyle8_QueryInterface

/* IDirectMusicStyle8Impl IDirectMusicStyle8 part: */static HRESULT WINAPI IDirectMusicStyle8Impl_IDirectMusicStyle8_QueryInterface (LPDIRECTMUSICSTYLE8 iface, REFIID riid, LPVOID *ppobj) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, StyleVtbl, iface);	return IDirectMusicStyle8Impl_IUnknown_QueryInterface ((LPUNKNOWN)&This->UnknownVtbl, riid, ppobj);}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例8: IDirectMusicStyle8Impl_IDirectMusicStyle8_GetChordMap

static HRESULT WINAPI IDirectMusicStyle8Impl_IDirectMusicStyle8_GetChordMap (LPDIRECTMUSICSTYLE8 iface, WCHAR* pwszName, IDirectMusicChordMap** ppChordMap) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, StyleVtbl, iface);	FIXME("(%p, %p, %p): stub/n", This, pwszName, ppChordMap);	return S_OK;}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例9: IDirectMusicStyle8Impl_IDirectMusicStyle8_GetTimeSignature

static HRESULT WINAPI IDirectMusicStyle8Impl_IDirectMusicStyle8_GetTimeSignature (LPDIRECTMUSICSTYLE8 iface, DMUS_TIMESIGNATURE* pTimeSig) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, StyleVtbl, iface);	FIXME("(%p, %p): stub/n", This, pTimeSig);	return S_OK;}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例10: IDirectMusicStyle8Impl_IPersistStream_GetSizeMax

static HRESULT WINAPI IDirectMusicStyle8Impl_IPersistStream_GetSizeMax (LPPERSISTSTREAM iface, ULARGE_INTEGER* pcbSize) {  ICOM_THIS_MULTI(IDirectMusicStyle8Impl, PersistStreamVtbl, iface);  FIXME("(%p, %p): stub/n", This, pcbSize);  return E_NOTIMPL;}
开发者ID:Dimillian,项目名称:wine,代码行数:6,


示例11: IDirectMusicStyle8Impl_IDirectMusicStyle8_GetDefaultBand

static HRESULT WINAPI IDirectMusicStyle8Impl_IDirectMusicStyle8_GetDefaultBand (LPDIRECTMUSICSTYLE8 iface, IDirectMusicBand** ppBand) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, StyleVtbl, iface);	FIXME("(%p, %p): stub/n", This, ppBand);	return S_OK;}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例12: IDirectMusicStyle8Impl_IPersistStream_Save

static HRESULT WINAPI IDirectMusicStyle8Impl_IPersistStream_Save (LPPERSISTSTREAM iface, IStream* pStm, BOOL fClearDirty) {  ICOM_THIS_MULTI(IDirectMusicStyle8Impl, PersistStreamVtbl, iface);  FIXME("(%p): Saving not implemented yet/n", This);  return E_NOTIMPL;}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例13: IDirectMusicStyle8Impl_IDirectMusicStyle8_AddRef

static ULONG WINAPI IDirectMusicStyle8Impl_IDirectMusicStyle8_AddRef (LPDIRECTMUSICSTYLE8 iface) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, StyleVtbl, iface);	return IDirectMusicStyle8Impl_IUnknown_AddRef ((LPUNKNOWN)&This->UnknownVtbl);}
开发者ID:Dimillian,项目名称:wine,代码行数:4,


示例14: IDirectMusicBandImpl_IDirectMusicBand_Release

static ULONG WINAPI IDirectMusicBandImpl_IDirectMusicBand_Release (LPDIRECTMUSICBAND iface) {	ICOM_THIS_MULTI(IDirectMusicBandImpl, BandVtbl, iface);	return IUnknown_Release ((LPUNKNOWN)&This->UnknownVtbl);}
开发者ID:howard5888,项目名称:wineT,代码行数:4,


示例15: IDirectMusicStyle8Impl_IPersistStream_GetClassID

static HRESULT WINAPI IDirectMusicStyle8Impl_IPersistStream_GetClassID (LPPERSISTSTREAM iface, CLSID* pClassID) {  ICOM_THIS_MULTI(IDirectMusicStyle8Impl, PersistStreamVtbl, iface);  TRACE("(%p, %p)/n", This, pClassID);  *pClassID = CLSID_DirectMusicStyle;  return S_OK;}
开发者ID:Dimillian,项目名称:wine,代码行数:6,


示例16: IDirectMusicStyle8Impl_IDirectMusicStyle8_GetEmbellishmentLength

static HRESULT WINAPI IDirectMusicStyle8Impl_IDirectMusicStyle8_GetEmbellishmentLength (LPDIRECTMUSICSTYLE8 iface, DWORD dwType, DWORD dwLevel, DWORD* pdwMin, DWORD* pdwMax) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, StyleVtbl, iface);	FIXME("(%p, %d, %d, %p, %p): stub/n", This, dwType, dwLevel, pdwMin, pdwMax);	return S_OK;}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例17: IDirectMusicStyle8Impl_IPersistStream_IsDirty

static HRESULT WINAPI IDirectMusicStyle8Impl_IPersistStream_IsDirty (LPPERSISTSTREAM iface) {  ICOM_THIS_MULTI(IDirectMusicStyle8Impl, PersistStreamVtbl, iface);  FIXME("(%p): stub, always S_FALSE/n", This);  return S_FALSE;}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例18: IDirectMusicStyle8Impl_IDirectMusicStyle8_GetTempo

static HRESULT WINAPI IDirectMusicStyle8Impl_IDirectMusicStyle8_GetTempo (LPDIRECTMUSICSTYLE8 iface, double* pTempo) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, StyleVtbl, iface);	FIXME("(%p, %p): stub/n", This, pTempo);	return S_OK;}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例19: IDirectMusicStyle8Impl_IPersistStream_ParseStyleForm

static HRESULT IDirectMusicStyle8Impl_IPersistStream_ParseStyleForm (LPPERSISTSTREAM iface, DMUS_PRIVATE_CHUNK* pChunk, IStream* pStm) {  ICOM_THIS_MULTI(IDirectMusicStyle8Impl, PersistStreamVtbl, iface);  HRESULT hr = E_FAIL;  DMUS_PRIVATE_CHUNK Chunk;  DWORD StreamSize, StreamCount, ListSize[3], ListCount[3];  LARGE_INTEGER liMove; /* used when skipping chunks */  IDirectMusicBand* pBand = NULL;  if (pChunk->fccID != DMUS_FOURCC_STYLE_FORM) {    ERR_(dmfile)(": %s chunk should be a STYLE form/n", debugstr_fourcc (pChunk->fccID));    return E_FAIL;  }    StreamSize = pChunk->dwSize - sizeof(FOURCC);  StreamCount = 0;  do {    IStream_Read (pStm, &Chunk, sizeof(FOURCC)+sizeof(DWORD), NULL);    StreamCount += sizeof(FOURCC) + sizeof(DWORD) + Chunk.dwSize;    TRACE_(dmfile)(": %s chunk (size = %d)", debugstr_fourcc (Chunk.fccID), Chunk.dwSize);        hr = IDirectMusicUtils_IPersistStream_ParseDescGeneric(&Chunk, pStm, This->pDesc);    if (FAILED(hr)) return hr;    if (hr == S_FALSE) {      switch (Chunk.fccID) {      case DMUS_FOURCC_STYLE_CHUNK: {	TRACE_(dmfile)(": Style chunk/n");	IStream_Read (pStm, &This->style, sizeof(DMUS_IO_STYLE), NULL);	/** TODO dump DMUS_IO_TIMESIG style.timeSig */	TRACE_(dmfile)(" - dblTempo: %g/n", This->style.dblTempo);	break;      }         case FOURCC_RIFF: {	/**	 * should be embedded Bands into style	 */	IStream_Read (pStm, &Chunk.fccID, sizeof(FOURCC), NULL);	TRACE_(dmfile)(": RIFF chunk of type %s", debugstr_fourcc(Chunk.fccID));	ListSize[0] = Chunk.dwSize - sizeof(FOURCC);	ListCount[0] = 0;	switch (Chunk.fccID) {	case DMUS_FOURCC_BAND_FORM: { 	  LPSTREAM pClonedStream = NULL;	  LPDMUS_PRIVATE_STYLE_BAND pNewBand;	  TRACE_(dmfile)(": BAND RIFF/n");	  	  IStream_Clone (pStm, &pClonedStream);	    	  liMove.QuadPart = 0;	  liMove.QuadPart -= sizeof(FOURCC) + (sizeof(FOURCC)+sizeof(DWORD));	  IStream_Seek (pClonedStream, liMove, STREAM_SEEK_CUR, NULL);	  	  hr = IDirectMusicStyle8Impl_IPersistStream_LoadBand (iface, pClonedStream, &pBand);	  if (FAILED(hr)) {	    ERR(": could not load track/n");	    return hr;	  }	  IStream_Release (pClonedStream);	  	  pNewBand = HeapAlloc (GetProcessHeap (), HEAP_ZERO_MEMORY, sizeof(DMUS_PRIVATE_STYLE_BAND));	  if (NULL == pNewBand) {	    ERR(": no more memory/n");	    return  E_OUTOFMEMORY;	  }	  pNewBand->pBand = pBand;	  IDirectMusicBand_AddRef(pBand);	  list_add_tail (&This->Bands, &pNewBand->entry);	  IDirectMusicTrack_Release(pBand); pBand = NULL;  /* now we can release it as it's inserted */		  /** now safely move the cursor */	  liMove.QuadPart = ListSize[0];	  IStream_Seek (pStm, liMove, STREAM_SEEK_CUR, NULL);	  	  break;	}	default: {	  TRACE_(dmfile)(": unknown chunk (irrelevant & skipping)/n");	  liMove.QuadPart = ListSize[0];	  IStream_Seek (pStm, liMove, STREAM_SEEK_CUR, NULL);	  break;	}	}	break;      }      case FOURCC_LIST: {	IStream_Read (pStm, &Chunk.fccID, sizeof(FOURCC), NULL);	TRACE_(dmfile)(": LIST chunk of type %s", debugstr_fourcc(Chunk.fccID));	ListSize[0] = Chunk.dwSize - sizeof(FOURCC);	ListCount[0] = 0;	switch (Chunk.fccID) {	case DMUS_FOURCC_UNFO_LIST: { 	  TRACE_(dmfile)(": UNFO list/n");	  do {	    IStream_Read (pStm, &Chunk, sizeof(FOURCC)+sizeof(DWORD), NULL);	    ListCount[0] += sizeof(FOURCC) + sizeof(DWORD) + Chunk.dwSize;//.........这里部分代码省略.........
开发者ID:Dimillian,项目名称:wine,代码行数:101,


示例20: IDirectMusicStyle8Impl_IDirectMusicStyle8_EnumPattern

static HRESULT WINAPI IDirectMusicStyle8Impl_IDirectMusicStyle8_EnumPattern (LPDIRECTMUSICSTYLE8 iface, DWORD dwIndex, DWORD dwPatternType, WCHAR* pwszName) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, StyleVtbl, iface);	FIXME("(%p, %d, %d, %p): stub/n", This, dwIndex, dwPatternType, pwszName);	return S_OK;}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例21: IDirectMusicChordMapTrack_IDirectMusicTrack_Init

static HRESULT WINAPI IDirectMusicChordMapTrack_IDirectMusicTrack_Init (LPDIRECTMUSICTRACK8 iface, IDirectMusicSegment* pSegment) {	ICOM_THIS_MULTI(IDirectMusicChordMapTrack, TrackVtbl, iface);	FIXME("(%p, %p): stub/n", This, pSegment);	return S_OK;}
开发者ID:DeltaYang,项目名称:wine,代码行数:5,


示例22: IDirectMusicStyle8Impl_IDirectMusicObject_Release

static ULONG WINAPI IDirectMusicStyle8Impl_IDirectMusicObject_Release (LPDIRECTMUSICOBJECT iface) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, ObjectVtbl, iface);	return IDirectMusicStyle8Impl_IUnknown_Release ((LPUNKNOWN)&This->UnknownVtbl);}
开发者ID:Dimillian,项目名称:wine,代码行数:4,


示例23: IDirectMusicChordMapTrack_IDirectMusicTrack_EndPlay

static HRESULT WINAPI IDirectMusicChordMapTrack_IDirectMusicTrack_EndPlay (LPDIRECTMUSICTRACK8 iface, void* pStateData) {	ICOM_THIS_MULTI(IDirectMusicChordMapTrack, TrackVtbl, iface);	FIXME("(%p, %p): stub/n", This, pStateData);	return S_OK;}
开发者ID:DeltaYang,项目名称:wine,代码行数:5,


示例24: IDirectMusicStyle8Impl_IDirectMusicObject_ParseDescriptor

static HRESULT WINAPI IDirectMusicStyle8Impl_IDirectMusicObject_ParseDescriptor (LPDIRECTMUSICOBJECT iface, LPSTREAM pStream, LPDMUS_OBJECTDESC pDesc) {	ICOM_THIS_MULTI(IDirectMusicStyle8Impl, ObjectVtbl, iface);	DMUS_PRIVATE_CHUNK Chunk;	DWORD StreamSize, StreamCount, ListSize[1], ListCount[1];	LARGE_INTEGER liMove; /* used when skipping chunks */	TRACE("(%p, %p, %p)/n", This, pStream, pDesc);	/* FIXME: should this be determined from stream? */	pDesc->dwValidData |= DMUS_OBJ_CLASS;	pDesc->guidClass = CLSID_DirectMusicStyle;	IStream_Read (pStream, &Chunk, sizeof(FOURCC)+sizeof(DWORD), NULL);	TRACE_(dmfile)(": %s chunk (size = 0x%04x)", debugstr_fourcc (Chunk.fccID), Chunk.dwSize);	switch (Chunk.fccID) {			case FOURCC_RIFF: {			IStream_Read (pStream, &Chunk.fccID, sizeof(FOURCC), NULL);							TRACE_(dmfile)(": RIFF chunk of type %s", debugstr_fourcc(Chunk.fccID));			StreamSize = Chunk.dwSize - sizeof(FOURCC);			StreamCount = 0;			if (Chunk.fccID == DMUS_FOURCC_STYLE_FORM) {				TRACE_(dmfile)(": style form/n");				do {					IStream_Read (pStream, &Chunk, sizeof(FOURCC)+sizeof(DWORD), NULL);					StreamCount += sizeof(FOURCC) + sizeof(DWORD) + Chunk.dwSize;					TRACE_(dmfile)(": %s chunk (size = 0x%04x)", debugstr_fourcc (Chunk.fccID), Chunk.dwSize);					switch (Chunk.fccID) {						case DMUS_FOURCC_GUID_CHUNK: {							TRACE_(dmfile)(": GUID chunk/n");							pDesc->dwValidData |= DMUS_OBJ_OBJECT;							IStream_Read (pStream, &pDesc->guidObject, Chunk.dwSize, NULL);							break;						}						case DMUS_FOURCC_VERSION_CHUNK: {							TRACE_(dmfile)(": version chunk/n");							pDesc->dwValidData |= DMUS_OBJ_VERSION;							IStream_Read (pStream, &pDesc->vVersion, Chunk.dwSize, NULL);							break;						}						case DMUS_FOURCC_CATEGORY_CHUNK: {							TRACE_(dmfile)(": category chunk/n");							pDesc->dwValidData |= DMUS_OBJ_CATEGORY;							IStream_Read (pStream, pDesc->wszCategory, Chunk.dwSize, NULL);							break;						}						case FOURCC_LIST: {							IStream_Read (pStream, &Chunk.fccID, sizeof(FOURCC), NULL);											TRACE_(dmfile)(": LIST chunk of type %s", debugstr_fourcc(Chunk.fccID));							ListSize[0] = Chunk.dwSize - sizeof(FOURCC);							ListCount[0] = 0;							switch (Chunk.fccID) {								/* evil M$ UNFO list, which can (!?) contain INFO elements */								case DMUS_FOURCC_UNFO_LIST: {									TRACE_(dmfile)(": UNFO list/n");									do {										IStream_Read (pStream, &Chunk, sizeof(FOURCC)+sizeof(DWORD), NULL);										ListCount[0] += sizeof(FOURCC) + sizeof(DWORD) + Chunk.dwSize;										TRACE_(dmfile)(": %s chunk (size = 0x%04x)", debugstr_fourcc (Chunk.fccID), Chunk.dwSize);										switch (Chunk.fccID) {											/* don't ask me why, but M$ puts INFO elements in UNFO list sometimes                                             (though strings seem to be valid unicode) */											case mmioFOURCC('I','N','A','M'):											case DMUS_FOURCC_UNAM_CHUNK: {												TRACE_(dmfile)(": name chunk/n");												pDesc->dwValidData |= DMUS_OBJ_NAME;												IStream_Read (pStream, pDesc->wszName, Chunk.dwSize, NULL);												break;											}											case mmioFOURCC('I','A','R','T'):											case DMUS_FOURCC_UART_CHUNK: {												TRACE_(dmfile)(": artist chunk (ignored)/n");												liMove.QuadPart = Chunk.dwSize;												IStream_Seek (pStream, liMove, STREAM_SEEK_CUR, NULL);												break;											}											case mmioFOURCC('I','C','O','P'):											case DMUS_FOURCC_UCOP_CHUNK: {												TRACE_(dmfile)(": copyright chunk (ignored)/n");												liMove.QuadPart = Chunk.dwSize;												IStream_Seek (pStream, liMove, STREAM_SEEK_CUR, NULL);												break;											}											case mmioFOURCC('I','S','B','J'):											case DMUS_FOURCC_USBJ_CHUNK: {												TRACE_(dmfile)(": subject chunk (ignored)/n");												liMove.QuadPart = Chunk.dwSize;												IStream_Seek (pStream, liMove, STREAM_SEEK_CUR, NULL);												break;											}											case mmioFOURCC('I','C','M','T'):											case DMUS_FOURCC_UCMT_CHUNK: {												TRACE_(dmfile)(": comment chunk (ignored)/n");												liMove.QuadPart = Chunk.dwSize;												IStream_Seek (pStream, liMove, STREAM_SEEK_CUR, NULL);												break;											}											default: {												TRACE_(dmfile)(": unknown chunk (irrelevant & skipping)/n");												liMove.QuadPart = Chunk.dwSize;												IStream_Seek (pStream, liMove, STREAM_SEEK_CUR, NULL);//.........这里部分代码省略.........
开发者ID:Dimillian,项目名称:wine,代码行数:101,


示例25: IDirectMusicChordMapTrack_IDirectMusicTrack_SetParam

static HRESULT WINAPI IDirectMusicChordMapTrack_IDirectMusicTrack_SetParam (LPDIRECTMUSICTRACK8 iface, REFGUID rguidType, MUSIC_TIME mtTime, void* pParam) {	ICOM_THIS_MULTI(IDirectMusicChordMapTrack, TrackVtbl, iface);	FIXME("(%p, %s, %d, %p): stub/n", This, debugstr_dmguid(rguidType), mtTime, pParam);	return S_OK;}
开发者ID:DeltaYang,项目名称:wine,代码行数:5,


示例26: IDirectMusicStyle8Impl_IPersistStream_QueryInterface

/* IDirectMusicStyle8Impl IPersistStream part: */static HRESULT WINAPI IDirectMusicStyle8Impl_IPersistStream_QueryInterface (LPPERSISTSTREAM iface, REFIID riid, LPVOID *ppobj) {  ICOM_THIS_MULTI(IDirectMusicStyle8Impl, PersistStreamVtbl, iface);  return IDirectMusicStyle8Impl_IUnknown_QueryInterface ((LPUNKNOWN)&This->UnknownVtbl, riid, ppobj);}
开发者ID:Dimillian,项目名称:wine,代码行数:5,


示例27: IDirectMusicChordMapTrack_IDirectMusicTrack_Clone

static HRESULT WINAPI IDirectMusicChordMapTrack_IDirectMusicTrack_Clone (LPDIRECTMUSICTRACK8 iface, MUSIC_TIME mtStart, MUSIC_TIME mtEnd, IDirectMusicTrack** ppTrack) {	ICOM_THIS_MULTI(IDirectMusicChordMapTrack, TrackVtbl, iface);	FIXME("(%p, %d, %d, %p): stub/n", This, mtStart, mtEnd, ppTrack);	return S_OK;}
开发者ID:DeltaYang,项目名称:wine,代码行数:5,


示例28: IDirectMusicStyle8Impl_IPersistStream_Release

static ULONG WINAPI IDirectMusicStyle8Impl_IPersistStream_Release (LPPERSISTSTREAM iface) {  ICOM_THIS_MULTI(IDirectMusicStyle8Impl, PersistStreamVtbl, iface);  return IDirectMusicStyle8Impl_IUnknown_Release ((LPUNKNOWN)&This->UnknownVtbl);}
开发者ID:Dimillian,项目名称:wine,代码行数:4,


示例29: IDirectMusicChordMapTrack_IDirectMusicTrack_SetParamEx

static HRESULT WINAPI IDirectMusicChordMapTrack_IDirectMusicTrack_SetParamEx (LPDIRECTMUSICTRACK8 iface, REFGUID rguidType, REFERENCE_TIME rtTime, void* pParam, void* pStateData, DWORD dwFlags) {	ICOM_THIS_MULTI(IDirectMusicChordMapTrack, TrackVtbl, iface);	FIXME("(%p, %s, 0x%s, %p, %p, %d): stub/n", This, debugstr_dmguid(rguidType),	    wine_dbgstr_longlong(rtTime), pParam, pStateData, dwFlags);	return S_OK;}
开发者ID:DeltaYang,项目名称:wine,代码行数:6,


示例30: IDirectMusicBandImpl_IPersistStream_ParseBandForm

static HRESULT IDirectMusicBandImpl_IPersistStream_ParseBandForm (LPPERSISTSTREAM iface, DMUS_PRIVATE_CHUNK* pChunk, IStream* pStm) {  ICOM_THIS_MULTI(IDirectMusicBandImpl, PersistStreamVtbl, iface);  HRESULT hr = E_FAIL;  DMUS_PRIVATE_CHUNK Chunk;  DWORD StreamSize, StreamCount, ListSize[3], ListCount[3];  LARGE_INTEGER liMove; /* used when skipping chunks */  GUID tmp_guid;  if (pChunk->fccID != DMUS_FOURCC_BAND_FORM) {    ERR_(dmfile)(": %s chunk should be a BAND form/n", debugstr_fourcc (pChunk->fccID));    return E_FAIL;  }    StreamSize = pChunk->dwSize - sizeof(FOURCC);  StreamCount = 0;  do {    IStream_Read (pStm, &Chunk, sizeof(FOURCC)+sizeof(DWORD), NULL);    StreamCount += sizeof(FOURCC) + sizeof(DWORD) + Chunk.dwSize;    TRACE_(dmfile)(": %s chunk (size = %ld)", debugstr_fourcc (Chunk.fccID), Chunk.dwSize);    hr = IDirectMusicUtils_IPersistStream_ParseDescGeneric(&Chunk, pStm, This->pDesc);    if (FAILED(hr)) return hr;        if (hr == S_FALSE) {      switch (Chunk.fccID) {      case DMUS_FOURCC_GUID_CHUNK: {	TRACE_(dmfile)(": GUID/n");	IStream_Read (pStm, &tmp_guid, sizeof(GUID), NULL);	TRACE_(dmfile)(" - guid: %s/n", debugstr_dmguid(&tmp_guid));	break;      }      case FOURCC_LIST: {	IStream_Read (pStm, &Chunk.fccID, sizeof(FOURCC), NULL);	TRACE_(dmfile)(": LIST chunk of type %s", debugstr_fourcc(Chunk.fccID));	ListSize[0] = Chunk.dwSize - sizeof(FOURCC);	ListCount[0] = 0;	switch (Chunk.fccID) {	case DMUS_FOURCC_UNFO_LIST: { 	  TRACE_(dmfile)(": UNFO list/n");	  do {	    IStream_Read (pStm, &Chunk, sizeof(FOURCC)+sizeof(DWORD), NULL);	    ListCount[0] += sizeof(FOURCC) + sizeof(DWORD) + Chunk.dwSize;	    TRACE_(dmfile)(": %s chunk (size = %ld)", debugstr_fourcc (Chunk.fccID), Chunk.dwSize);	    	    hr = IDirectMusicUtils_IPersistStream_ParseUNFOGeneric(&Chunk, pStm, This->pDesc);	    if (FAILED(hr)) return hr;	    	    if (hr == S_FALSE) {	      switch (Chunk.fccID) {	      default: {		TRACE_(dmfile)(": unknown chunk (irrevelant & skipping)/n");		liMove.QuadPart = Chunk.dwSize;		IStream_Seek (pStm, liMove, STREAM_SEEK_CUR, NULL);		break;							      }	      }	    }	    TRACE_(dmfile)(": ListCount[0] = %ld < ListSize[0] = %ld/n", ListCount[0], ListSize[0]);	  } while (ListCount[0] < ListSize[0]);	  break;	}	case DMUS_FOURCC_INSTRUMENTS_LIST: {	  TRACE_(dmfile)(": INSTRUMENTS list/n");	  hr = IDirectMusicBandImpl_IPersistStream_ParseInstrumentsList (iface, &Chunk, pStm);	  if (FAILED(hr)) return hr;	  break;		}	default: {	  TRACE_(dmfile)(": unknown (skipping)/n");	  liMove.QuadPart = Chunk.dwSize - sizeof(FOURCC);	  IStream_Seek (pStm, liMove, STREAM_SEEK_CUR, NULL);	  break;							}	}	break;      }      default: {	TRACE_(dmfile)(": unknown chunk (irrevelant & skipping)/n");	liMove.QuadPart = Chunk.dwSize;	IStream_Seek (pStm, liMove, STREAM_SEEK_CUR, NULL);	break;						      }      }    }    TRACE_(dmfile)(": StreamCount[0] = %ld < StreamSize[0] = %ld/n", StreamCount, StreamSize);  } while (StreamCount < StreamSize);    return S_OK;}
开发者ID:howard5888,项目名称:wineT,代码行数:92,



注:本文中的ICOM_THIS_MULTI函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ IClassFactory_AddRef函数代码示例
C++ ICMP_STATS_INC函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。