int openMicAndStartRecording(DWORD threadId) { int i; WAVEFORMATEX m_WaveFormatEx = getDefaultFormat(); if( MMSYSERR_NOERROR != waveInOpen(&g_recordHandler,WAVE_MAPPER,&m_WaveFormatEx,threadId,0,CALLBACK_THREAD)){ printf("ER1!\n"); return -1; } for(i=0; i<MAXRECBUFFER; i++){ rechead[i]=CreateWaveHeader(); if(MMSYSERR_NOERROR != waveInPrepareHeader(g_recordHandler,rechead[i], sizeof(WAVEHDR)) ){ printf("ER2! i=%d\n", i); return -1; } if(MMSYSERR_NOERROR != waveInAddBuffer(g_recordHandler, rechead[i], sizeof(WAVEHDR))){ printf("ER3!\n"); return -1; } if(MMSYSERR_NOERROR != waveInStart(g_recordHandler)){ printf("ER4!\n"); return -1; } } printf("Start recording OK!\n"); return 0; }
IterateResult NumLayersTest::build (FboBuilder& builder) { TextureLayered* texCfg = DE_NULL; const GLenum target = GL_COLOR_ATTACHMENT0; switch (m_params.textureKind) { case GL_TEXTURE_3D: texCfg = &builder.makeConfig<Texture3D>(); break; case GL_TEXTURE_2D_ARRAY: texCfg = &builder.makeConfig<Texture2DArray>(); break; default: DE_ASSERT(!"Impossible case"); } texCfg->internalFormat = getDefaultFormat(target, GL_TEXTURE); texCfg->width = 64; texCfg->height = 64; texCfg->numLayers = m_params.numLayers; const GLuint tex = builder.glCreateTexture(*texCfg); TextureLayerAttachment* att = &builder.makeConfig<TextureLayerAttachment>(); att->layer = m_params.attachmentLayer; att->imageName = tex; builder.glAttach(target, att); return STOP; }