XrmGetResource(3X11) — UNIX Programmer’s Manual
名称
XrmGetResource, XrmQGetResource, XrmQGetSearchList, XrmQGetSearchResource - データベースリソースおよびサーチリストを検索する
形式
Bool XrmGetResource(database, str_name, str_class, str_type_return, value_return)
XrmDatabase database;
char ∗str_name;
char ∗str_class;
char ∗∗str_type_return;
XrmValue ∗value_return; Bool XrmQGetResource(database, quark_name, quark_class, quark_type_return, value_return)
XrmDatabase database;
XrmNameList quark_name;
XrmClassList quark_class;
XrmRepresentation ∗quark_type_return;
XrmValue ∗value_return; typedef XrmHashTable ∗XrmSearchList; Bool XrmQGetSearchList(database, names, classes, list_return, list_length)
XrmDatabase database;
XrmNameList names;
XrmClassList classes;
XrmSearchList list_return;
int list_length; Bool XrmQGetSearchResource(list, name, class, type_return, value_return)
XrmSearchList list;
XrmName name;
XrmClass class;
XrmRepresentation ∗type_return;
XrmValue ∗value_return;
引数
classリソースクラスを指定します。
classesリソースクラスリストを指定します。
database使用するデータベースを指定します。
listXrmQGetSearchList によって返されるサーチリストを指定します。
list_lengthlist_return のため割り当てられたエントリ数 ( バイトサイズではない ) を指定します。
list_return後で使用するためのサーチリストを返します。
nameリソース名を指定します。
namesリソース名リストを指定します。
quark_class検索中の値の完全修飾クラスを指定します ( クォークとして ) 。
quark_name検索中の値の完全修飾名を指定します ( クォークとして ) 。
quark_type_return
デスティネーションの表現タイプを指すポインタを返します ( クォークとして ) 。
str_class検索中の値の完全修飾クラスを指定します ( 文字列として ) 。
str_name検索中の値の完全修飾名を指定します ( 文字列として ) 。
str_type_return
デスティネーションの表現タイプを指すポインタを返します ( 文字列として ) 。
type_returnデータ表現タイプを返します。
value_returnデータベースの値を返します。
解説
XrmGetResource および XrmQGetResource 関数は、指定されたデータベースからリソースを検索します。 両関数は、完全修飾名 / クラスペア、デスティネーションリソース表現 および値のアドレス ( サイズ / アドレスペア ) をとります。 値と返されるタイプは、データベースメモリ中におかれます。 したがって、データベースを変更してはなりません。 XrmPutResource、 XrmQPutResource または XrmMergeDatabases は、データベースのエントリを解放するかまたは重ね書きするにすぎません。 新しい値をデータベースに登録したりデータベースをマージしたりしていない クライアントは、終了するまでいつでも、安全のため返された アドレスを使用しなければなりません。 リソースがあれば、 XrmGetResource と XrmQGetResource は True を返します。なければ、 False を返します。 XrmQGetSearchList 関数は、名前およびクラスリストを受け取り、 一致したデータベースレベルのリストを返します。 返されたリストは最良のものから最悪のものの順になっており、 XrmGetResource と同じアルゴリズムを使用し、優先順位を決めます。
list_return がサーチリストに十分な大きさであれば、 XrmQGetSearchList は True を返します。 十分な大きさでなければ、 False を返します。 割り当てるサーチリストのサイズは、データベースに登録されている リソース指定子のワイルドカードおよびレベル数に左右されます。 最悪のケースでは長さは3n です。 ここで n は 名前の数か、クラスまたは名前のクラス要素数です。 XrmQGetSearchList を共通の名前およびクラスプレフィックスをもつリソースの複数の 検索の次に使用する場合、 XrmQGetSearchList に対して名前およびクラスリストで共通のプレフィックスだけを 指定しなければなりません。 XrmQGetSearchResource 関数は、指定された名前とクラスで完全に識別されるリソースの、 指定されたデータベースレベルを検索します。 検索は、最初に一致した時停止します。 XrmQGetSearchResource は、リソースがあれば、 True を返します。 なければ、 False を返します。 リソース名の最後の要素の名前とクラスで XrmQGetSearchResource をコールしたあとで、リソース名の最後の要素以外のすべてを含む 名前とクラスのリストで XrmQGetSearchList をコールすると、完全修飾名とクラスで XrmGetResource および XrmQGetResource をコールした場合と同じデータベース・エントリが返されます。
関連事項
XrmInitialize(3X11), XrmMergeDatabases(3X11), XrmPutResource(3X11), XrmUniqueQuark(3X11)
Xlib − C Language X Interface
NEWS-OSRelease 3.3