#include "graphite2/Segment.h"
#include "inc/UtfCodec.h"
#include "inc/Segment.h"
usingnamespacegraphite2;
namespace
{
gr_segment* makeAndInitialize(const Font *font, const Face *face, uint32 script, const Features* pFeats, gr_encform enc, const void* pStart, size_t nChars, int dir)
{ … }
template <typename utf_iter>
inline size_t count_unicode_chars(utf_iter first, const utf_iter last, const void **error)
{ … }
}
extern "C" {
size_t gr_count_unicode_characters(gr_encform enc, const void* buffer_begin, const void* buffer_end, const void** pError)
{ … }
gr_segment* gr_make_seg(const gr_font *font, const gr_face *face, gr_uint32 script, const gr_feature_val* pFeats, gr_encform enc, const void* pStart, size_t nChars, int dir)
{ … }
void gr_seg_destroy(gr_segment* p)
{ … }
float gr_seg_advance_X(const gr_segment* pSeg)
{ … }
float gr_seg_advance_Y(const gr_segment* pSeg)
{ … }
unsigned int gr_seg_n_cinfo(const gr_segment* pSeg)
{ … }
const gr_char_info* gr_seg_cinfo(const gr_segment* pSeg, unsigned int index)
{ … }
unsigned int gr_seg_n_slots(const gr_segment* pSeg)
{ … }
const gr_slot* gr_seg_first_slot(gr_segment* pSeg)
{ … }
const gr_slot* gr_seg_last_slot(gr_segment* pSeg)
{ … }
float gr_seg_justify(gr_segment* pSeg, const gr_slot* pSlot, const gr_font *pFont, double width, enum gr_justFlags flags, const gr_slot *pFirst, const gr_slot *pLast)
{ … }
}