hackthelobby/libcaca/java/org_zoy_caca_Attribute.c

61 lines
1.6 KiB
C

/*
* libcaca Java bindings for libcaca
* Copyright (c) 2009 Adrien Grand <jpountz@dinauz.org>
*
* This library is free software. It comes without any warranty, to
* the extent permitted by applicable law. You can redistribute it
* and/or modify it under the terms of the Do What the Fuck You Want
* to Public License, Version 2, as published by Sam Hocevar. See
* http://www.wtfpl.net/ for more details.
*/
#include "org_zoy_caca_Attribute.h"
#include "caca.h"
JNIEXPORT jbyte JNICALL
Java_org_zoy_caca_Attribute_attributeToAnsi(JNIEnv *env, jclass cls, jint attr)
{
return caca_attr_to_ansi(attr);
}
JNIEXPORT jbyte JNICALL
Java_org_zoy_caca_Attribute_attributeToAnsiForeground(JNIEnv *env, jclass cls, jint attr)
{
return caca_attr_to_ansi_fg(attr);
}
JNIEXPORT jbyte JNICALL
Java_org_zoy_caca_Attribute_attributeToAnsiBackground(JNIEnv *env, jclass cls, jint attr)
{
return caca_attr_to_ansi_bg(attr);
}
JNIEXPORT jshort JNICALL
Java_org_zoy_caca_Attribute_attributeToRgb12Foreground(JNIEnv *env, jclass cls, jint attr)
{
return caca_attr_to_rgb12_fg(attr);
}
JNIEXPORT jshort JNICALL
Java_org_zoy_caca_Attribute_attributeToRgb12Background(JNIEnv *env, jclass cls, jint attr)
{
return caca_attr_to_rgb12_bg(attr);
}
JNIEXPORT jbyteArray JNICALL
Java_org_zoy_caca_Attribute_attributeToArgb64(JNIEnv *env, jclass cls, jint attr)
{
jbyteArray ret;
jbyte *elems;
ret = (*env)->NewByteArray(env, 8);
elems = (*env)->GetByteArrayElements(env, ret, 0);
caca_attr_to_argb64(attr, elems);
(*env)->ReleaseByteArrayElements(env, ret, elems, 0);
return ret;
}