/* Interface IDeckLinkOutput - Created by QueryInterface from IDeckLink. */
classIDeckLinkOutput_v9_9:publicIUnknown
{
public:
virtualHRESULTDoesSupportVideoMode(/* in */BMDDisplayModedisplayMode,/* in */BMDPixelFormatpixelFormat,/* in */BMDVideoOutputFlagsflags,/* out */BMDDisplayModeSupport*result,/* out */IDeckLinkDisplayMode**resultDisplayMode)=0;
virtualHRESULTGetDisplayModeIterator(/* out */IDeckLinkDisplayModeIterator**iterator)=0;
virtualHRESULTSetVideoOutputFrameMemoryAllocator(/* in */IDeckLinkMemoryAllocator*theAllocator)=0;
virtualHRESULTCreateVideoFrame(/* in */int32_twidth,/* in */int32_theight,/* in */int32_trowBytes,/* in */BMDPixelFormatpixelFormat,/* in */BMDFrameFlagsflags,/* out */IDeckLinkMutableVideoFrame**outFrame)=0;
virtualHRESULTCreateAncillaryData(/* in */BMDPixelFormatpixelFormat,/* out */IDeckLinkVideoFrameAncillary**outBuffer)=0;
virtualHRESULTDisplayVideoFrameSync(/* in */IDeckLinkVideoFrame*theFrame)=0;
virtualHRESULTScheduleVideoFrame(/* in */IDeckLinkVideoFrame*theFrame,/* in */BMDTimeValuedisplayTime,/* in */BMDTimeValuedisplayDuration,/* in */BMDTimeScaletimeScale)=0;
virtualHRESULTSetScheduledFrameCompletionCallback(/* in */IDeckLinkVideoOutputCallback*theCallback)=0;
virtualHRESULTGetBufferedVideoFrameCount(/* out */uint32_t*bufferedFrameCount)=0;
virtualHRESULTEnableAudioOutput(/* in */BMDAudioSampleRatesampleRate,/* in */BMDAudioSampleTypesampleType,/* in */uint32_tchannelCount,/* in */BMDAudioOutputStreamTypestreamType)=0;
virtualHRESULTScheduleAudioSamples(/* in */void*buffer,/* in */uint32_tsampleFrameCount,/* in */BMDTimeValuestreamTime,/* in */BMDTimeScaletimeScale,/* out */uint32_t*sampleFramesWritten)=0;
virtualHRESULTGetHardwareReferenceClock(/* in */BMDTimeScaledesiredTimeScale,/* out */BMDTimeValue*hardwareTime,/* out */BMDTimeValue*timeInFrame,/* out */BMDTimeValue*ticksPerFrame)=0;