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