/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
#if !defined(JAVA2D_NO_MLIB) || defined(MLIB_ADD_SUFF)
#include "vis_AlphaMacros.h"
/***************************************************************/
{ \
mlib_s32 j; \
\
\
for (j = 0; j < height; j++) { \
\
\
} \
\
} \
}
/***************************************************************/
{ \
mlib_s32 j; \
\
\
for (j = 0; j < height; j++) { \
\
\
} \
\
} \
}
/***************************************************************/
{ \
\
\
\
}
/***************************************************************/
{
}
/***************************************************************/
{
}
/***************************************************************/
/***************************************************************/
{
mlib_s32 i, j;
unsigned int rowBytes;
if (!pixels) continue;
}
}
}
if (bottom > clipBottom) {
bottom = clipBottom;
}
continue;
}
}
}
}
for (j = 0; j < height; j++) {
/*
* Typically the inner loop here works on Argb input data, an
* Argb color, and produces ArgbPre output data. To use that
* standard approach we would need a FourByteAbgrPre to IntArgb
* converter for the front end and an IntArgbPre to FourByteAbgrPre
* converter for the back end. The converter exists for the
* front end, but it is a workaround implementation that uses a 2
* stage conversion and an intermediate buffer that is allocated
* on every call. The converter for the back end doesn't really
* exist, but we could reuse the IntArgb to FourByteAbgr converter
* to do the same work - at the cost of swapping the components as
* we copy the data back. All of this is more work than we really
* need so we use an alternate procedure:
* - Copy the data into an int-aligned temporary buffer (if needed)
* - Convert the data from FourByteAbgrPre to IntAbgr by using the
* IntArgbPre to IntArgb converter in the int-aligned buffer.
* - Swap the color data to Abgr so that the inner loop goes from
* IntAbgr data to IntAbgrPre data
* - Simply copy the IntAbgrPre data back into place.
*/
}
vis_write_gsr(0 << 3);
dst++;
}
#pragma pipeloop(0)
src += 2;
}
dst++;
}
#pragma pipeloop(0)
for (i = 0; i < width; i++) {
if (src[i] == 255) {
}
}
}
}
}
}
/***************************************************************/
#endif /* JAVA2D_NO_MLIB */