w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

graphite2::SlotCollision Class Reference

#include <Collider.h>

Collaboration diagram for graphite2::SlotCollision:
[legend]

Public Types

enum  {
  COLL_FIX = 1 , COLL_IGNORE = 2 , COLL_START = 4 , COLL_END = 8 ,
  COLL_KERN = 16 , COLL_ISCOL = 32 , COLL_KNOWN = 64 , COLL_ISSPACE = 128 ,
  COLL_TEMPLOCK = 256
}
 
enum  {
  SEQ_ORDER_LEFTDOWN = 1 , SEQ_ORDER_RIGHTUP = 2 , SEQ_ORDER_NOABOVE = 4 , SEQ_ORDER_NOBELOW = 8 ,
  SEQ_ORDER_NOLEFT = 16 , SEQ_ORDER_NORIGHT = 32
}
 
enum  {
  COLL_FIX = 1 , COLL_IGNORE = 2 , COLL_START = 4 , COLL_END = 8 ,
  COLL_KERN = 16 , COLL_ISCOL = 32 , COLL_KNOWN = 64 , COLL_ISSPACE = 128 ,
  COLL_TEMPLOCK = 256
}
 
enum  {
  SEQ_ORDER_LEFTDOWN = 1 , SEQ_ORDER_RIGHTUP = 2 , SEQ_ORDER_NOABOVE = 4 , SEQ_ORDER_NOBELOW = 8 ,
  SEQ_ORDER_NOLEFT = 16 , SEQ_ORDER_NORIGHT = 32
}
 

Public Member Functions

 SlotCollision (Segment *seg, Slot *slot)
 
void initFromSlot (Segment *seg, Slot *slot)
 
const Rectlimit () const
 
void setLimit (const Rect &r)
 
const Positionshift () const
 
void setShift (const Position &v)
 
const Positionoffset () const
 
void setOffset (const Position &v)
 
const PositionexclOffset () const
 
void setExclOffset (const Position &v)
 
uint16 margin () const
 
void setMargin (uint16 v)
 
uint16 marginWt () const
 
void setMarginWt (uint16 v)
 
uint16 flags () const
 
void setFlags (uint16 v)
 
uint16 exclGlyph () const
 
void setExclGlyph (uint16 v)
 
uint16 seqClass () const
 
void setSeqClass (uint16 v)
 
uint16 seqProxClass () const
 
void setSeqProxClass (uint16 v)
 
uint16 seqOrder () const
 
void setSeqOrder (uint16 v)
 
int16 seqAboveXoff () const
 
void setSeqAboveXoff (int16 v)
 
uint16 seqAboveWt () const
 
void setSeqAboveWt (uint16 v)
 
int16 seqBelowXlim () const
 
void setSeqBelowXlim (int16 v)
 
uint16 seqBelowWt () const
 
void setSeqBelowWt (uint16 v)
 
uint16 seqValignHt () const
 
void setSeqValignHt (uint16 v)
 
uint16 seqValignWt () const
 
void setSeqValignWt (uint16 v)
 
float getKern (int dir) const
 
bool ignore () const
 
 SlotCollision (Segment *seg, Slot *slot)
 
void initFromSlot (Segment *seg, Slot *slot)
 
const Rectlimit () const
 
void setLimit (const Rect &r)
 
const Positionshift () const
 
void setShift (const Position &v)
 
const Positionoffset () const
 
void setOffset (const Position &v)
 
const PositionexclOffset () const
 
void setExclOffset (const Position &v)
 
uint16 margin () const
 
void setMargin (uint16 v)
 
uint16 marginWt () const
 
void setMarginWt (uint16 v)
 
uint16 flags () const
 
void setFlags (uint16 v)
 
uint16 exclGlyph () const
 
void setExclGlyph (uint16 v)
 
uint16 seqClass () const
 
void setSeqClass (uint16 v)
 
uint16 seqProxClass () const
 
void setSeqProxClass (uint16 v)
 
uint16 seqOrder () const
 
void setSeqOrder (uint16 v)
 
int16 seqAboveXoff () const
 
void setSeqAboveXoff (int16 v)
 
uint16 seqAboveWt () const
 
void setSeqAboveWt (uint16 v)
 
int16 seqBelowXlim () const
 
void setSeqBelowXlim (int16 v)
 
uint16 seqBelowWt () const
 
void setSeqBelowWt (uint16 v)
 
uint16 seqValignHt () const
 
void setSeqValignHt (uint16 v)
 
uint16 seqValignWt () const
 
void setSeqValignWt (uint16 v)
 
float getKern (int dir) const
 
bool ignore () const
 

Private Attributes

Rect _limit
 
Position _shift
 
Position _offset
 
Position _exclOffset
 
uint16 _margin
 
uint16 _marginWt
 
uint16 _flags
 
uint16 _exclGlyph
 
uint16 _seqClass
 
uint16 _seqProxClass
 
uint16 _seqOrder
 
int16 _seqAboveXoff
 
uint16 _seqAboveWt
 
int16 _seqBelowXlim
 
uint16 _seqBelowWt
 
uint16 _seqValignHt
 
uint16 _seqValignWt
 

Detailed Description

Definition at line 45 of file Collider.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
COLL_FIX 
COLL_IGNORE 
COLL_START 
COLL_END 
COLL_KERN 
COLL_ISCOL 
COLL_KNOWN 
COLL_ISSPACE 
COLL_TEMPLOCK 

Definition at line 48 of file Collider.h.

◆ anonymous enum

anonymous enum
Enumerator
SEQ_ORDER_LEFTDOWN 
SEQ_ORDER_RIGHTUP 
SEQ_ORDER_NOABOVE 
SEQ_ORDER_NOBELOW 
SEQ_ORDER_NOLEFT 
SEQ_ORDER_NORIGHT 

Definition at line 65 of file Collider.h.

◆ anonymous enum

anonymous enum
Enumerator
COLL_FIX 
COLL_IGNORE 
COLL_START 
COLL_END 
COLL_KERN 
COLL_ISCOL 
COLL_KNOWN 
COLL_ISSPACE 
COLL_TEMPLOCK 

Definition at line 48 of file Collider.h.

◆ anonymous enum

anonymous enum
Enumerator
SEQ_ORDER_LEFTDOWN 
SEQ_ORDER_RIGHTUP 
SEQ_ORDER_NOABOVE 
SEQ_ORDER_NOBELOW 
SEQ_ORDER_NOLEFT 
SEQ_ORDER_NORIGHT 

Definition at line 65 of file Collider.h.

Constructor & Destructor Documentation

◆ SlotCollision() [1/2]

SlotCollision::SlotCollision ( Segment seg,
Slot slot 
)

Definition at line 1067 of file Collider.cpp.

References initFromSlot(), and slot.

◆ SlotCollision() [2/2]

graphite2::SlotCollision::SlotCollision ( Segment seg,
Slot slot 
)

Member Function Documentation

◆ exclGlyph() [1/2]

uint16 graphite2::SlotCollision::exclGlyph ( ) const
inline

Definition at line 85 of file Collider.h.

Referenced by graphite2::ShiftCollider::mergeSlot(), and graphite2::operator<<().

◆ exclGlyph() [2/2]

uint16 graphite2::SlotCollision::exclGlyph ( ) const
inline

Definition at line 85 of file Collider.h.

◆ exclOffset() [1/2]

const Position& graphite2::SlotCollision::exclOffset ( ) const
inline

Definition at line 81 of file Collider.h.

Referenced by graphite2::ShiftCollider::mergeSlot(), and graphite2::operator<<().

◆ exclOffset() [2/2]

const Position& graphite2::SlotCollision::exclOffset ( ) const
inline

Definition at line 81 of file Collider.h.

◆ flags() [1/2]

uint16 graphite2::SlotCollision::flags ( ) const
inline

◆ flags() [2/2]

uint16 graphite2::SlotCollision::flags ( ) const
inline

Definition at line 84 of file Collider.h.

◆ getKern() [1/2]

float SlotCollision::getKern ( int  dir) const

Definition at line 1104 of file Collider.cpp.

References _flags, _shift, COLL_KERN, dir, and graphite2::Position::x.

◆ getKern() [2/2]

float graphite2::SlotCollision::getKern ( int  dir) const

◆ ignore() [1/2]

bool SlotCollision::ignore ( ) const

◆ ignore() [2/2]

bool graphite2::SlotCollision::ignore ( ) const

◆ initFromSlot() [1/2]

◆ initFromSlot() [2/2]

void graphite2::SlotCollision::initFromSlot ( Segment seg,
Slot slot 
)

◆ limit() [1/2]

const Rect& graphite2::SlotCollision::limit ( ) const
inline

◆ limit() [2/2]

const Rect& graphite2::SlotCollision::limit ( ) const
inline

Definition at line 77 of file Collider.h.

References _limit.

◆ margin() [1/2]

uint16 graphite2::SlotCollision::margin ( ) const
inline

◆ margin() [2/2]

uint16 graphite2::SlotCollision::margin ( ) const
inline

Definition at line 82 of file Collider.h.

◆ marginWt() [1/2]

uint16 graphite2::SlotCollision::marginWt ( ) const
inline

Definition at line 83 of file Collider.h.

Referenced by graphite2::operator<<(), and graphite2::Pass::resolveCollisions().

◆ marginWt() [2/2]

uint16 graphite2::SlotCollision::marginWt ( ) const
inline

Definition at line 83 of file Collider.h.

◆ offset() [1/2]

const Position& graphite2::SlotCollision::offset ( ) const
inline

◆ offset() [2/2]

const Position& graphite2::SlotCollision::offset ( ) const
inline

Definition at line 80 of file Collider.h.

◆ seqAboveWt() [1/2]

uint16 graphite2::SlotCollision::seqAboveWt ( ) const
inline

Definition at line 90 of file Collider.h.

Referenced by graphite2::ShiftCollider::mergeSlot(), and graphite2::operator<<().

◆ seqAboveWt() [2/2]

uint16 graphite2::SlotCollision::seqAboveWt ( ) const
inline

Definition at line 90 of file Collider.h.

◆ seqAboveXoff() [1/2]

int16 graphite2::SlotCollision::seqAboveXoff ( ) const
inline

Definition at line 89 of file Collider.h.

Referenced by graphite2::ShiftCollider::mergeSlot(), and graphite2::operator<<().

◆ seqAboveXoff() [2/2]

int16 graphite2::SlotCollision::seqAboveXoff ( ) const
inline

Definition at line 89 of file Collider.h.

◆ seqBelowWt() [1/2]

uint16 graphite2::SlotCollision::seqBelowWt ( ) const
inline

Definition at line 92 of file Collider.h.

Referenced by graphite2::ShiftCollider::mergeSlot(), and graphite2::operator<<().

◆ seqBelowWt() [2/2]

uint16 graphite2::SlotCollision::seqBelowWt ( ) const
inline

Definition at line 92 of file Collider.h.

◆ seqBelowXlim() [1/2]

int16 graphite2::SlotCollision::seqBelowXlim ( ) const
inline

Definition at line 91 of file Collider.h.

Referenced by graphite2::ShiftCollider::mergeSlot(), and graphite2::operator<<().

◆ seqBelowXlim() [2/2]

int16 graphite2::SlotCollision::seqBelowXlim ( ) const
inline

Definition at line 91 of file Collider.h.

◆ seqClass() [1/2]

uint16 graphite2::SlotCollision::seqClass ( ) const
inline

Definition at line 86 of file Collider.h.

Referenced by graphite2::ShiftCollider::mergeSlot(), and graphite2::operator<<().

◆ seqClass() [2/2]

uint16 graphite2::SlotCollision::seqClass ( ) const
inline

Definition at line 86 of file Collider.h.

◆ seqOrder() [1/2]

uint16 graphite2::SlotCollision::seqOrder ( ) const
inline

Definition at line 88 of file Collider.h.

Referenced by graphite2::operator<<().

◆ seqOrder() [2/2]

uint16 graphite2::SlotCollision::seqOrder ( ) const
inline

Definition at line 88 of file Collider.h.

◆ seqProxClass() [1/2]

uint16 graphite2::SlotCollision::seqProxClass ( ) const
inline

Definition at line 87 of file Collider.h.

Referenced by graphite2::operator<<().

◆ seqProxClass() [2/2]

uint16 graphite2::SlotCollision::seqProxClass ( ) const
inline

Definition at line 87 of file Collider.h.

◆ seqValignHt() [1/2]

uint16 graphite2::SlotCollision::seqValignHt ( ) const
inline

Definition at line 93 of file Collider.h.

Referenced by graphite2::ShiftCollider::mergeSlot(), and graphite2::operator<<().

◆ seqValignHt() [2/2]

uint16 graphite2::SlotCollision::seqValignHt ( ) const
inline

Definition at line 93 of file Collider.h.

◆ seqValignWt() [1/2]

uint16 graphite2::SlotCollision::seqValignWt ( ) const
inline

Definition at line 94 of file Collider.h.

Referenced by graphite2::ShiftCollider::mergeSlot(), and graphite2::operator<<().

◆ seqValignWt() [2/2]

uint16 graphite2::SlotCollision::seqValignWt ( ) const
inline

Definition at line 94 of file Collider.h.

◆ setExclGlyph() [1/2]

void graphite2::SlotCollision::setExclGlyph ( uint16  v)
inline

Definition at line 85 of file Collider.h.

◆ setExclGlyph() [2/2]

void graphite2::SlotCollision::setExclGlyph ( uint16  v)
inline

Definition at line 85 of file Collider.h.

◆ setExclOffset() [1/2]

void graphite2::SlotCollision::setExclOffset ( const Position v)
inline

Definition at line 81 of file Collider.h.

◆ setExclOffset() [2/2]

void graphite2::SlotCollision::setExclOffset ( const Position v)
inline

Definition at line 81 of file Collider.h.

◆ setFlags() [1/2]

void graphite2::SlotCollision::setFlags ( uint16  v)
inline

Definition at line 84 of file Collider.h.

Referenced by graphite2::Pass::resolveCollisions(), and graphite2::Pass::resolveKern().

◆ setFlags() [2/2]

void graphite2::SlotCollision::setFlags ( uint16  v)
inline

Definition at line 84 of file Collider.h.

◆ setLimit() [1/2]

void graphite2::SlotCollision::setLimit ( const Rect r)
inline

Definition at line 78 of file Collider.h.

References _limit, and r.

◆ setLimit() [2/2]

void graphite2::SlotCollision::setLimit ( const Rect r)
inline

Definition at line 78 of file Collider.h.

References _limit, and r.

◆ setMargin() [1/2]

void graphite2::SlotCollision::setMargin ( uint16  v)
inline

Definition at line 82 of file Collider.h.

◆ setMargin() [2/2]

void graphite2::SlotCollision::setMargin ( uint16  v)
inline

Definition at line 82 of file Collider.h.

◆ setMarginWt() [1/2]

void graphite2::SlotCollision::setMarginWt ( uint16  v)
inline

Definition at line 83 of file Collider.h.

◆ setMarginWt() [2/2]

void graphite2::SlotCollision::setMarginWt ( uint16  v)
inline

Definition at line 83 of file Collider.h.

◆ setOffset() [1/2]

void graphite2::SlotCollision::setOffset ( const Position v)
inline

Definition at line 80 of file Collider.h.

◆ setOffset() [2/2]

void graphite2::SlotCollision::setOffset ( const Position v)
inline

Definition at line 80 of file Collider.h.

◆ setSeqAboveWt() [1/2]

void graphite2::SlotCollision::setSeqAboveWt ( uint16  v)
inline

Definition at line 90 of file Collider.h.

◆ setSeqAboveWt() [2/2]

void graphite2::SlotCollision::setSeqAboveWt ( uint16  v)
inline

Definition at line 90 of file Collider.h.

◆ setSeqAboveXoff() [1/2]

void graphite2::SlotCollision::setSeqAboveXoff ( int16  v)
inline

Definition at line 89 of file Collider.h.

◆ setSeqAboveXoff() [2/2]

void graphite2::SlotCollision::setSeqAboveXoff ( int16  v)
inline

Definition at line 89 of file Collider.h.

◆ setSeqBelowWt() [1/2]

void graphite2::SlotCollision::setSeqBelowWt ( uint16  v)
inline

Definition at line 92 of file Collider.h.

◆ setSeqBelowWt() [2/2]

void graphite2::SlotCollision::setSeqBelowWt ( uint16  v)
inline

Definition at line 92 of file Collider.h.

◆ setSeqBelowXlim() [1/2]

void graphite2::SlotCollision::setSeqBelowXlim ( int16  v)
inline

Definition at line 91 of file Collider.h.

◆ setSeqBelowXlim() [2/2]

void graphite2::SlotCollision::setSeqBelowXlim ( int16  v)
inline

Definition at line 91 of file Collider.h.

◆ setSeqClass() [1/2]

void graphite2::SlotCollision::setSeqClass ( uint16  v)
inline

Definition at line 86 of file Collider.h.

◆ setSeqClass() [2/2]

void graphite2::SlotCollision::setSeqClass ( uint16  v)
inline

Definition at line 86 of file Collider.h.

◆ setSeqOrder() [1/2]

void graphite2::SlotCollision::setSeqOrder ( uint16  v)
inline

Definition at line 88 of file Collider.h.

◆ setSeqOrder() [2/2]

void graphite2::SlotCollision::setSeqOrder ( uint16  v)
inline

Definition at line 88 of file Collider.h.

◆ setSeqProxClass() [1/2]

void graphite2::SlotCollision::setSeqProxClass ( uint16  v)
inline

Definition at line 87 of file Collider.h.

◆ setSeqProxClass() [2/2]

void graphite2::SlotCollision::setSeqProxClass ( uint16  v)
inline

Definition at line 87 of file Collider.h.

◆ setSeqValignHt() [1/2]

void graphite2::SlotCollision::setSeqValignHt ( uint16  v)
inline

Definition at line 93 of file Collider.h.

◆ setSeqValignHt() [2/2]

void graphite2::SlotCollision::setSeqValignHt ( uint16  v)
inline

Definition at line 93 of file Collider.h.

◆ setSeqValignWt() [1/2]

void graphite2::SlotCollision::setSeqValignWt ( uint16  v)
inline

Definition at line 94 of file Collider.h.

◆ setSeqValignWt() [2/2]

void graphite2::SlotCollision::setSeqValignWt ( uint16  v)
inline

Definition at line 94 of file Collider.h.

◆ setShift() [1/2]

void graphite2::SlotCollision::setShift ( const Position v)
inline

Definition at line 79 of file Collider.h.

Referenced by graphite2::Pass::resolveCollisions(), and graphite2::Pass::resolveKern().

◆ setShift() [2/2]

void graphite2::SlotCollision::setShift ( const Position v)
inline

Definition at line 79 of file Collider.h.

◆ shift() [1/2]

const Position& graphite2::SlotCollision::shift ( ) const
inline

Definition at line 79 of file Collider.h.

Referenced by graphite2::Pass::resolveCollisions(), and graphite2::Pass::resolveKern().

◆ shift() [2/2]

const Position& graphite2::SlotCollision::shift ( ) const
inline

Definition at line 79 of file Collider.h.

Member Data Documentation

◆ _exclGlyph

uint16 graphite2::SlotCollision::_exclGlyph
private

Definition at line 107 of file Collider.h.

Referenced by initFromSlot().

◆ _exclOffset

Position graphite2::SlotCollision::_exclOffset
private

Definition at line 103 of file Collider.h.

Referenced by initFromSlot().

◆ _flags

uint16 graphite2::SlotCollision::_flags
private

Definition at line 106 of file Collider.h.

Referenced by getKern(), and initFromSlot().

◆ _limit

Rect graphite2::SlotCollision::_limit
private

Definition at line 100 of file Collider.h.

Referenced by initFromSlot(), limit(), and setLimit().

◆ _margin

uint16 graphite2::SlotCollision::_margin
private

Definition at line 104 of file Collider.h.

Referenced by initFromSlot().

◆ _marginWt

uint16 graphite2::SlotCollision::_marginWt
private

Definition at line 105 of file Collider.h.

Referenced by initFromSlot().

◆ _offset

Position graphite2::SlotCollision::_offset
private

Definition at line 102 of file Collider.h.

◆ _seqAboveWt

uint16 graphite2::SlotCollision::_seqAboveWt
private

Definition at line 112 of file Collider.h.

Referenced by initFromSlot().

◆ _seqAboveXoff

int16 graphite2::SlotCollision::_seqAboveXoff
private

Definition at line 111 of file Collider.h.

Referenced by initFromSlot().

◆ _seqBelowWt

uint16 graphite2::SlotCollision::_seqBelowWt
private

Definition at line 114 of file Collider.h.

Referenced by initFromSlot().

◆ _seqBelowXlim

int16 graphite2::SlotCollision::_seqBelowXlim
private

Definition at line 113 of file Collider.h.

Referenced by initFromSlot().

◆ _seqClass

uint16 graphite2::SlotCollision::_seqClass
private

Definition at line 108 of file Collider.h.

Referenced by initFromSlot().

◆ _seqOrder

uint16 graphite2::SlotCollision::_seqOrder
private

Definition at line 110 of file Collider.h.

Referenced by initFromSlot().

◆ _seqProxClass

uint16 graphite2::SlotCollision::_seqProxClass
private

Definition at line 109 of file Collider.h.

Referenced by initFromSlot().

◆ _seqValignHt

uint16 graphite2::SlotCollision::_seqValignHt
private

Definition at line 115 of file Collider.h.

Referenced by initFromSlot().

◆ _seqValignWt

uint16 graphite2::SlotCollision::_seqValignWt
private

Definition at line 116 of file Collider.h.

Referenced by initFromSlot().

◆ _shift

Position graphite2::SlotCollision::_shift
private

Definition at line 101 of file Collider.h.

Referenced by getKern().


The documentation for this class was generated from the following files: