blob: 1d6cedb1646934b64d067610e631df358ccbb319 [file] [log] [blame] [edit]
/*
* libbrlapi - A library providing access to braille terminals for applications.
*
* Copyright (C) 2006-2023 by
* Samuel Thibault <Samuel.Thibault@ens-lyon.org>
* Sébastien Hinderer <Sebastien.Hinderer@ens-lyon.org>
*
* libbrlapi comes with ABSOLUTELY NO WARRANTY.
*
* This is free software, placed under the terms of the
* GNU Lesser General Public License, as published by the Free Software
* Foundation; either version 2.1 of the License, or (at your option) any
* later version. Please see the file LICENSE-LGPL for details.
*
* Web Page: http://brltty.app/
*
* This software is maintained by Dave Mielke <dave@mielke.cc>.
*/
package org.a11y.brlapi;
public abstract class Component {
protected Component () {
}
public final static int BYTE_MASK = (1 << Byte.SIZE) - 1;
public final static char UNICODE_BRAILLE_ROW = 0X2800;
public static char toUnicodeBraille (byte dots) {
char character = UNICODE_BRAILLE_ROW;
character |= dots & BYTE_MASK;
return character;
}
public static String toUnicodeBraille (byte[] dots) {
int count = dots.length;
char[] characters = new char[count];
for (int i=0; i<count; i+=1) characters[i] = toUnicodeBraille(dots[i]);
return new String(characters);
}
public static void printf (String format, Object... arguments) {
System.out.printf(format, arguments);
}
public static String toOperandName (String string) {
return string.replace(' ', '-').toLowerCase();
}
public static String getObjectName(Class<? extends Object> type) {
return type.getSimpleName();
}
public final String getObjectName() {
return getObjectName(getClass());
}
}