Y Window is attempt to create portable, network transparent, text-mode windowing envioroment.
[[[FIXME: general info ptrs.]]]
Following preprocessor symbols (among other) are defined by <yw/config.h> header:
YW_HOST_ENDIAN to be either YW_BIG_ENDIAN or YW_LITTLE_ENDIAN.
Info: i386 is YW_LITTLE_ENDIAN and sparc is YW_BIG_ENDIAN.
YW_HAS_ZLIB is defined when actuall libyw implementation supports zlib compression.
YW_HAS_IPV6 is defined when actuall libyw implementation supports IPv6.
YW_CUR_PROTO_VER and YW_CUR_PROTO_REL to current version and release of protocol (0.0 at the moment).
All headers define symbol YW_FILE_NAME_H when they are #included.
Most of header files of the library includes some other files, basic order of this is shown here:
<yw/config.h> includes nothing.
<yw/types.h> includes <yw/config.h> and system header <stdarg.h>.
<yw/error.h> includes nothing.
<yw/util.h> includes <yw/types.h> and <yw/error.h>.
<yw/packet.h> includes <yw/types.h>.
<yw/sock.h> includes <yw/packet.h>.
<yw/hash.h> includes nothing.
Following types are defined in <yw/types.h>:
int8_t - 8 bit signed integer.
uint8_t - 8 bit unsigned integer.
int16_t - 16 bit signed integer.
uint16_t - 16 bit unsigned integer.
int32_t - 32 bit signed integer.
uint32_t - 32 bit unsigned integer.
packet creation/destruction:
yw_packet_append_bindata(3)
yw_packet_append_int(3)
yw_packet_append_keyword(3)
yw_packet_append_ptr(3)
yw_packet_append_string(3)
yw_packet_append_void(3)
yw_packet_append_word(3)
yw_packet_append_word_no_copy(3)
yw_packet_append_words(3)
yw_packet_free(3)
yw_packet_make(3)
yw_packet_make_v(3)
yw_packet_new(3)
packet query:
yw_packet_length(3)
yw_packet_type(3)
yw_packet_word(3)
word queries:
yw_word_fetch_bindata(3)
yw_word_fetch_int(3)
yw_word_fetch_keyword(3)
yw_word_fetch_mapped_keyword(3)
yw_word_fetch_ptr(3)
yw_word_fetch_string(3)
yw_word_fetch_void(3)
yw_word_next(3)
yw_word_type(3)
packet sending/recving:
yw_conn_queue(3)
yw_conn_queue_and_free(3)
yw_conn_queue_flush(3)
yw_conn_recv(3)
yw_conn_recv_reply(3)
yw_conn_send(3)
yw_conn_send_and_free(3)
connectio handling:
yw_conn_free(3)
yw_conn_get_state(3)
yw_conn_new(3)
yw_conn_open(3)
yw_conn_set_flag(3)
yw_conn_state(3)
memory allocation:
yw_free(3)
yw_malloc(3)
yw_malloc_0(3)
yw_realloc(3)
mutexes:
yw_lock(3)
yw_lock_destroy(3)
yw_lock_init(3)
yw_lock_ro(3)
yw_lock_rw(3)
yw_unlock(3)
yw_unlock_ro(3)
yw_unlock_rw(3)
8 bit string -> int mapping:
yw_map(3)
yw_map_free_cache(3)
pseudo random numbers:
yw_random_add(3)
yw_random_byte(3)
yw_random_get(3)
yw_random_int(3)
8 bit string handling:
yw_concat(3)
yw_setstr(3)
yw_strdup(3)
yw_strstr(3)
unicode string initialization/destruction:
yw_string_assign_cstring(3)
yw_string_assign_empty(3)
yw_string_assign_n_chars(3)
yw_string_assign_one_char(3)
yw_string_assign_string(3)
yw_string_assign_utf16(3)
yw_string_assign_utf32(3)
yw_string_assign_utf8(3)
yw_string_free(3)
unicode string handling:
yw_string_cmp(3)
yw_string_concat(3)
yw_string_idx(3)
converting unicode string to other repesentations:
yw_string_get_cstring(3)
yw_string_get_utf16(3)
yw_string_get_utf32(3)
yw_string_get_utf8(3)
window handling:
yw_window_buffer(3)
yw_window_close(3)
yw_window_id(3)
yw_window_new(3)
yw_window_new_and_free(3)
yw_window_set_origin(3)
misc:
YppButton(3)
YppClass(3)
YppGroup(3)
YppInput(3)
YppLabel(3)
YppWidget(3)
YppWindow(3)
yw_count_md5(3)
yw_die(3)
yw_get_default_encoding(3)
yw_packet_copy_of(3)
yw_sleep(3)
yw_strchr(3)
yw_strerror(3)
yw_swap_bytes(3)
yw_tag_find(3)