// This file was generated by the Gtk# code generator.
// Any changes made will be lost if regenerated.

#include <pango/pango.h>

static const gchar *__prefix = "__gtksharp_";

#define HAS_PREFIX(a) (*((guint64 *)(a)) == *((guint64 *) __prefix))

static GObjectClass *
get_threshold_class (GObject *obj)
{
	GType gtype = G_TYPE_FROM_INSTANCE (obj);
	while (HAS_PREFIX (g_type_name (gtype)))
		gtype = g_type_parent (gtype);
	GObjectClass *klass = g_type_class_peek (gtype);
	if (klass == NULL) klass = g_type_class_ref (gtype);
	return klass;
}

guint pangosharp_pango_glyphstring_get_num_glyphs_offset (void);

guint
pangosharp_pango_glyphstring_get_num_glyphs_offset (void)
{
	return (guint)G_STRUCT_OFFSET (PangoGlyphString, num_glyphs);
}

gboolean pangosharp_pango_glyphvisattr_get_is_cluster_start (PangoGlyphVisAttr *glyphvisattr);
void pangosharp_pango_glyphvisattr_set_is_cluster_start (PangoGlyphVisAttr *glyphvisattr, gboolean value);

gboolean
pangosharp_pango_glyphvisattr_get_is_cluster_start (PangoGlyphVisAttr *glyphvisattr)
{
	return (gboolean)glyphvisattr->is_cluster_start;
}

void
pangosharp_pango_glyphvisattr_set_is_cluster_start (PangoGlyphVisAttr *glyphvisattr, gboolean value)
{
	glyphvisattr->is_cluster_start = (gboolean)value;
}

guint pangosharp_pango_item_get_offset_offset (void);

guint
pangosharp_pango_item_get_offset_offset (void)
{
	return (guint)G_STRUCT_OFFSET (PangoItem, offset);
}

guint pangosharp_pango_item_get_analysis_offset (void);

guint
pangosharp_pango_item_get_analysis_offset (void)
{
	return (guint)G_STRUCT_OFFSET (PangoItem, analysis);
}

guint pangosharp_pango_item_get_num_chars_offset (void);

guint
pangosharp_pango_item_get_num_chars_offset (void)
{
	return (guint)G_STRUCT_OFFSET (PangoItem, num_chars);
}

guint pangosharp_pango_item_get_length_offset (void);

guint
pangosharp_pango_item_get_length_offset (void)
{
	return (guint)G_STRUCT_OFFSET (PangoItem, length);
}

guint pangosharp_pango_layoutline_get_length_offset (void);

guint
pangosharp_pango_layoutline_get_length_offset (void)
{
	return (guint)G_STRUCT_OFFSET (PangoLayoutLine, length);
}

guint pangosharp_pango_layoutline_get_start_index_offset (void);

guint
pangosharp_pango_layoutline_get_start_index_offset (void)
{
	return (guint)G_STRUCT_OFFSET (PangoLayoutLine, start_index);
}

guint pangosharp_pango_layoutline_get_resolved_dir (PangoLayoutLine *layoutline);

guint
pangosharp_pango_layoutline_get_resolved_dir (PangoLayoutLine *layoutline)
{
	return (guint)layoutline->resolved_dir;
}

gboolean pangosharp_pango_layoutline_get_is_paragraph_start (PangoLayoutLine *layoutline);

gboolean
pangosharp_pango_layoutline_get_is_paragraph_start (PangoLayoutLine *layoutline)
{
	return (gboolean)layoutline->is_paragraph_start;
}

guint pangosharp_pango_layoutline_get_layout_offset (void);

guint
pangosharp_pango_layoutline_get_layout_offset (void)
{
	return (guint)G_STRUCT_OFFSET (PangoLayoutLine, layout);
}

gboolean pangosharp_pango_logattr_get_is_line_break (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_line_break (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_line_break (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_line_break;
}

void
pangosharp_pango_logattr_set_is_line_break (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_line_break = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_mandatory_break (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_mandatory_break (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_mandatory_break (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_mandatory_break;
}

void
pangosharp_pango_logattr_set_is_mandatory_break (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_mandatory_break = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_char_break (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_char_break (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_char_break (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_char_break;
}

void
pangosharp_pango_logattr_set_is_char_break (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_char_break = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_white (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_white (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_white (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_white;
}

void
pangosharp_pango_logattr_set_is_white (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_white = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_cursor_position (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_cursor_position (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_cursor_position (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_cursor_position;
}

void
pangosharp_pango_logattr_set_is_cursor_position (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_cursor_position = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_word_start (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_word_start (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_word_start (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_word_start;
}

void
pangosharp_pango_logattr_set_is_word_start (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_word_start = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_word_end (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_word_end (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_word_end (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_word_end;
}

void
pangosharp_pango_logattr_set_is_word_end (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_word_end = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_sentence_boundary (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_sentence_boundary (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_sentence_boundary (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_sentence_boundary;
}

void
pangosharp_pango_logattr_set_is_sentence_boundary (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_sentence_boundary = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_sentence_start (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_sentence_start (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_sentence_start (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_sentence_start;
}

void
pangosharp_pango_logattr_set_is_sentence_start (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_sentence_start = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_sentence_end (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_sentence_end (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_sentence_end (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_sentence_end;
}

void
pangosharp_pango_logattr_set_is_sentence_end (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_sentence_end = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_backspace_deletes_character (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_backspace_deletes_character (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_backspace_deletes_character (PangoLogAttr *logattr)
{
	return (gboolean)logattr->backspace_deletes_character;
}

void
pangosharp_pango_logattr_set_backspace_deletes_character (PangoLogAttr *logattr, gboolean value)
{
	logattr->backspace_deletes_character = (gboolean)value;
}

gboolean pangosharp_pango_logattr_get_is_expandable_space (PangoLogAttr *logattr);
void pangosharp_pango_logattr_set_is_expandable_space (PangoLogAttr *logattr, gboolean value);

gboolean
pangosharp_pango_logattr_get_is_expandable_space (PangoLogAttr *logattr)
{
	return (gboolean)logattr->is_expandable_space;
}

void
pangosharp_pango_logattr_set_is_expandable_space (PangoLogAttr *logattr, gboolean value)
{
	logattr->is_expandable_space = (gboolean)value;
}

