1    /*
     2     *  Copyright 2013 by Texas Instruments Incorporated.
     3     *
     4     */
     5    
     6    /*
     7     * Copyright (c) 2013, Texas Instruments Incorporated
     8     * All rights reserved.
     9     *
    10     * Redistribution and use in source and binary forms, with or without
    11     * modification, are permitted provided that the following conditions
    12     * are met:
    13     *
    14     * *  Redistributions of source code must retain the above copyright
    15     *    notice, this list of conditions and the following disclaimer.
    16     *
    17     * *  Redistributions in binary form must reproduce the above copyright
    18     *    notice, this list of conditions and the following disclaimer in the
    19     *    documentation and/or other materials provided with the distribution.
    20     *
    21     * *  Neither the name of Texas Instruments Incorporated nor the names of
    22     *    its contributors may be used to endorse or promote products derived
    23     *    from this software without specific prior written permission.
    24     *
    25     * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    26     * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
    27     * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    28     * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
    29     * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
    30     * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
    31     * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
    32     * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
    33     * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
    34     * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
    35     * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    36     *
    37     */
    38    /*!
    39     *  ======== ti.sdo.ce.image1.IIMGENC1 ========
    40     *  IIMGENC1-compliant image decoder interface
    41     *
    42     *  All IIMGENC1-compliant image decoder modules must implement this
    43     *  interface.
    44     */
    45    metaonly interface IIMGENC1 inherits ti.sdo.ce.ICodec
    46    {
    47        override config String serverFxns = "IMGENC1_SKEL";
    48        override config String stubFxns = "IMGENC1_STUBS";
    49    
    50        override readonly config Int rpcProtocolVersion = 1;
    51    
    52        override readonly config Bool codecClassConfigurable = true;
    53    
    54        /*!
    55         *  ======== manageInBufsCache =======
    56         *  Codec Class configuration param
    57         *
    58         *  Determines whether cache will be managed on the DSP for each of the
    59         *  (up to 16) input buffers given to the codec's "process()" call.
    60         *
    61         *  If this flag is set to "false" for one or more
    62         *  elements, the cache for the corresponding input buffer will not be
    63         *  invalidated before the process() call. Skipping unnecessary cache
    64         *  invalidation improves performance, especially if a buffer is large.
    65         *
    66         *  (If element "i" in this array is set to true, cache for inBufs[i] will
    67         *  be invalidated only if the buffer is supplied, of course.)
    68         *
    69         *  For example, if you know that a particular codec of this class always
    70         *  reads the data from its inBufs[1] buffer only via DMA, you can set
    71         *  manageInBufsCache[1] = false;
    72         */
    73        config Bool manageInBufsCache[ 16 ] = [
    74            true, true, true, true, true, true, true, true,
    75            true, true, true, true, true, true, true, true,
    76        ];
    77    
    78        /*!
    79         *  ======== manageOutBufsCache =======
    80         *  Codec Class configuration param
    81         *
    82         *  Determines whether cache will be managed on the DSP for each of the
    83         *  (up to 16) output buffers given to the codec's "process()" call.
    84         *
    85         *  If this flag is set to "false" for one or more
    86         *  elements, the cache for the corresponding output buffer will not be
    87         *  invalidated before the process() call.
    88         *  Skipping unnecessary cache invalidation improves
    89         *  performance. Whether the buffer will be written back after the process()
    90         *  call depends on the algorithm and cannot be controlled here.
    91         *
    92         *  For example, if you know that a particular codec of this class always
    93         *  writes the data to its outBufs[2] buffer only via DMA, you can set
    94         *  manageOutBufsCache[2] = false;
    95         */
    96        config Bool manageOutBufsCache[ 16 ] = [
    97            true, true, true, true, true, true, true, true,
    98            true, true, true, true, true, true, true, true,
    99        ];
   100    }
   101    /*
   102     *  @(#) ti.sdo.ce.image1; 1, 0, 1,3; 6-13-2013 00:15:50; /db/atree/library/trees/ce/ce-w08/src/ xlibrary
   103    
   104     */
   105