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 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
|
/*****************************************************************************/
/* ColorGC GCと色の管理・問い合わせ用のライブラリ */
/*****************************************************************************/
#ifndef _XFIREWORKS_ColorGC_h_INCLUDED_
#define _XFIREWORKS_ColorGC_h_INCLUDED_
typedef struct _ColorGCDatabase * ColorGCDatabase;
typedef struct _ColorGC * ColorGC;
#include <X11/Xlib.h>
#include "Disp.h"
#include "Obj.h"
/*===========================================================================*/
/* ColorGC 関連 */
/*===========================================================================*/
/*---------------------------------------------------------------------------*/
/* オブジェクトの生成 */
/*---------------------------------------------------------------------------*/
ColorGC ColorGC_Create(ColorGCDatabase database, XColor color);
ColorGC ColorGC_CreateFromColorGC(ColorGCDatabase database, ColorGC c);
/*---------------------------------------------------------------------------*/
/* RGB 値から生成する. */
/*---------------------------------------------------------------------------*/
ColorGC ColorGC_CreateFromRGB(ColorGCDatabase database,
int red, int green, int blue);
/*---------------------------------------------------------------------------*/
/* オブジェクトの削除 */
/*---------------------------------------------------------------------------*/
ColorGC ColorGC_Destroy(ColorGC color_gc);
/*===========================================================================*/
/* 文字列読み込み用関数 */
/*===========================================================================*/
/*---------------------------------------------------------------------------*/
/* 色とGCのデータベースから name で与えられた名前の色を検索する. */
/*---------------------------------------------------------------------------*/
ColorGC ColorGC_CreateFromCharacters(ColorGCDatabase database, char * name);
/*---------------------------------------------------------------------------*/
/* XColor 構造体の取得 */
/*---------------------------------------------------------------------------*/
XColor ColorGC_GetColor(ColorGC color_gc);
/*---------------------------------------------------------------------------*/
/* ピクセル値の取得 */
/*---------------------------------------------------------------------------*/
unsigned long ColorGC_GetPixel(ColorGC color_gc);
/*---------------------------------------------------------------------------*/
/* GC の取得 */
/*---------------------------------------------------------------------------*/
GC ColorGC_GetGC(ColorGC color_gc);
/*---------------------------------------------------------------------------*/
/* 色の明るさの取得 */
/*---------------------------------------------------------------------------*/
int GetBrightness(XColor color);
/*===========================================================================*/
/* GC のリストの作成 */
/*===========================================================================*/
/*---------------------------------------------------------------------------*/
/* GC のリストの作成 */
/* データ文字列から ColorGC のリストを作成し,返す. */
/* データ文字列のフォーマットは以下のとおり. */
/* "[スタートカラー1] [エンドカラー1] [長さ1] [スタートカラー2] ...\0" */
/* 例) "red green 10 green blue 20 blue none 10\0" */
/*---------------------------------------------------------------------------*/
ObjList CreateColorGCListFromCharacters(ColorGCDatabase database,
char * data,
int after_image_length,
int fine,
int color_length_mag);
/*===========================================================================*/
/* GC のデータベース */
/*===========================================================================*/
ColorGCDatabase ColorGCDatabase_Create(Disp disp,
int studying_flag,
int cache_flag,
int cache_size,
int hash_number,
char * background,
int gradation);
ColorGCDatabase ColorGCDatabase_Destroy(ColorGCDatabase database);
ColorGC ColorGCDatabase_GetBackgroundColorGC(ColorGCDatabase database);
/*---------------------------------------------------------------------------*/
/* チューニング用 */
/*---------------------------------------------------------------------------*/
void ColorGCDatabase_OutputHashStatus(ColorGCDatabase database);
#endif
/*****************************************************************************/
/* End of File */
/*****************************************************************************/
|