12e5b6d6dSopenharmony_ci// © 2017 and later: Unicode, Inc. and others. 22e5b6d6dSopenharmony_ci// License & terms of use: http://www.unicode.org/copyright.html 32e5b6d6dSopenharmony_ci/* 42e5b6d6dSopenharmony_ci******************************************************************************* 52e5b6d6dSopenharmony_ci* 62e5b6d6dSopenharmony_ci* Copyright (C) 2003, International Business Machines 72e5b6d6dSopenharmony_ci* Corporation and others. All Rights Reserved. 82e5b6d6dSopenharmony_ci* 92e5b6d6dSopenharmony_ci******************************************************************************* 102e5b6d6dSopenharmony_ci* 112e5b6d6dSopenharmony_ci* File uprinter.h 122e5b6d6dSopenharmony_ci* 132e5b6d6dSopenharmony_ci* Modification History: 142e5b6d6dSopenharmony_ci* 152e5b6d6dSopenharmony_ci* Date Name Description 162e5b6d6dSopenharmony_ci* 03/18/2003 weiv Creation. 172e5b6d6dSopenharmony_ci******************************************************************************* 182e5b6d6dSopenharmony_ci*/ 192e5b6d6dSopenharmony_ci 202e5b6d6dSopenharmony_ci#ifndef COLPROBE_UPRINTER_H 212e5b6d6dSopenharmony_ci#define COLPROBE_UPRINTER_H 222e5b6d6dSopenharmony_ci 232e5b6d6dSopenharmony_ci#include "line.h" 242e5b6d6dSopenharmony_ci 252e5b6d6dSopenharmony_ci#include "unicode/ustdio.h" 262e5b6d6dSopenharmony_ci#include "unicode/unistr.h" 272e5b6d6dSopenharmony_ci#include "unicode/ustring.h" 282e5b6d6dSopenharmony_ci 292e5b6d6dSopenharmony_ci 302e5b6d6dSopenharmony_ciclass UPrinter { 312e5b6d6dSopenharmony_ci UFILE *out; 322e5b6d6dSopenharmony_ci UChar buffer[256]; 332e5b6d6dSopenharmony_ci UBool _on; 342e5b6d6dSopenharmony_ci char _locale[256]; 352e5b6d6dSopenharmony_cipublic: 362e5b6d6dSopenharmony_ci UPrinter(FILE *file, const char *locale, const char *encoding, UBool transliterateNonPrintable=true); 372e5b6d6dSopenharmony_ci UPrinter(const char *name, const char *locale, const char *encoding, UTransliterator *trans, UBool transliterateNonPrintable); 382e5b6d6dSopenharmony_ci ~UPrinter(); 392e5b6d6dSopenharmony_ci void log(const UnicodeString &string, UBool nl = false); 402e5b6d6dSopenharmony_ci void log(const UChar *string, UBool nl = false); 412e5b6d6dSopenharmony_ci //void log(const char *string, UBool nl = false); 422e5b6d6dSopenharmony_ci void log(const Line *line, UBool nl = false); 432e5b6d6dSopenharmony_ci void log(const char *fmt, ...); 442e5b6d6dSopenharmony_ci void off(void); 452e5b6d6dSopenharmony_ci void on(void); 462e5b6d6dSopenharmony_ci UBool isOn(void) { 472e5b6d6dSopenharmony_ci return _on; 482e5b6d6dSopenharmony_ci }; 492e5b6d6dSopenharmony_ci}; 502e5b6d6dSopenharmony_ci 512e5b6d6dSopenharmony_ci 522e5b6d6dSopenharmony_ci 532e5b6d6dSopenharmony_ci#endif // #ifndef COLPROBE_UPRINTER_H 54