Annotation of driverkit/libDriver/Kernel/OutputStream.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
                      3:  *
                      4:  * @APPLE_LICENSE_HEADER_START@
                      5:  * 
                      6:  * Portions Copyright (c) 1999 Apple Computer, Inc.  All Rights
                      7:  * Reserved.  This file contains Original Code and/or Modifications of
                      8:  * Original Code as defined in and that are subject to the Apple Public
                      9:  * Source License Version 1.1 (the "License").  You may not use this file
                     10:  * except in compliance with the License.  Please obtain a copy of the
                     11:  * License at http://www.apple.com/publicsource and read it before using
                     12:  * this file.
                     13:  * 
                     14:  * The Original Code and all software distributed under the License are
                     15:  * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
                     16:  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
                     17:  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
                     18:  * FITNESS FOR A PARTICULAR PURPOSE OR NON- INFRINGEMENT.  Please see the
                     19:  * License for the specific language governing rights and limitations
                     20:  * under the License.
                     21:  * 
                     22:  * @APPLE_LICENSE_HEADER_END@
                     23:  */
                     24: /*
                     25:  * OutputStream.h
                     26:  *
                     27:  * Copyright (c) 1991, NeXT Computer, Inc.  All rights reserved.
                     28:  *
                     29:  *      Audio driver output stream object.
                     30:  *
                     31:  * HISTORY
                     32:  *      07/14/92/mtm    Original coding.
                     33:  */
                     34: 
                     35: #import "AudioStream.h"
                     36: #import "audio_types.h"
                     37: 
                     38: typedef struct xfer_record {
                     39:     dma_desc_t         *ddp;
                     40:     u_int              size;
                     41:     u_int              peak_left;
                     42:     u_int              peak_right;
                     43:     u_int              clips;
                     44:     queue_chain_t      link;
                     45: } xfer_record_t;
                     46: 
                     47: @interface OutputStream: AudioStream
                     48: {
                     49:     u_int              leftGain;
                     50:     u_int              rightGain;
                     51:     int                        resamplePhase;
                     52:     int                        channelPhase;
                     53:     int                        formatPhase;
                     54:     queue_head_t       xferQueue;
                     55:     BOOL               peakEnabled;
                     56:     u_int              peakHistory;
                     57:     u_int              *peaksLeft;
                     58:     u_int              *peaksRight;
                     59:     u_int              currentPeak;
                     60: }
                     61: 
                     62: - (BOOL)playBuffer:(void *)data size:(u_int)byteCount
                     63:                            tag:(int)tag
                     64:                        replyTo:(port_t)replyPort
                     65:                      replyMsgs:(ASMsgRequest)messages;
                     66: - (BOOL)canConvertRegion:(region_t *)region rate:(u_int)srate
                     67:     format:(IOAudioDataFormat)format channelCount:(u_int)chans;
                     68: - clearForMix:(char *)buf size:(u_int)count format:(IOAudioDataFormat)format;
                     69: - (u_int)mixRegion:(region_t *)region descriptor:(dma_desc_t *)ddp
                     70:             buffer:(vm_address_t)data maxCount:(u_int)max
                     71:             virgin:(BOOL)isVirgin rate:(u_int)srate format:(IOAudioDataFormat)format
                     72:            channelCount:(u_int)chans;
                     73: - completeRegion:(region_t *)region descriptor:(dma_desc_t *)ddp
                     74:             size:(u_int)xfer used:(u_int *)used;
                     75: 
                     76: - (BOOL)isDetectingPeaks;
                     77: - (void)setDetectPeaks:(BOOL)flag;
                     78: - getPeakLeft:(u_int *)leftPeak right:(u_int *)rightPeak;
                     79: - (unsigned int)gainLeft;
                     80: - (unsigned int)gainRight;
                     81: - (void)setGainLeft:(unsigned int)gain;
                     82: - (void)setGainRight:(unsigned int)gain;
                     83: - freeRegion:(region_t *)region;
                     84: - free;
                     85: 
                     86: @end

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.