1 2 3 4
5
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
38 /*!
39 * ======== IIMGDEC ========
40 * IIMGDEC-compliant image decoder interface
41 *
42 * All IIMGDEC-compliant image decoder modules must implement this
43 * interface.
44 */
45 metaonly interface IIMGDEC inherits ti.sdo.ce.ICodec
46 {
47 override config String serverFxns = "IMGDEC_SKEL";
48 override config String stubFxns = "IMGDEC_STUBS";
49
50 override readonly config Int rpcProtocolVersion = 3;
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 nor flushed after the process()
88 * call. Skipping unnecessary cache invalidation and flushing improves
89 * performance.
90 *
91 * For example, if you know that a particular codec of this class always
92 * writes the data to its outBufs[2] buffer only via DMA, you can set
93 * manageOutBufsCache[2] = false;
94 */
95 config Bool manageOutBufsCache[ 16 ] = [
96 true, true, true, true, true, true, true, true,
97 true, true, true, true, true, true, true, true,
98 ];
99 }
100 101 102 103
104