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::Zones Class Reference

#include <Intervals.h>

Collaboration diagram for graphite2::Zones:
[legend]

Classes

struct  Debug
 
struct  Exclusion
 

Public Types

typedef exclusions::const_iterator const_iterator
 
typedef Exclusion constconst_pointer
 
typedef Exclusion constconst_reference
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef Vector< Debugdebugs
 
typedef debugs::const_iterator idebugs
 
typedef exclusions::const_iterator const_iterator
 
typedef Exclusion constconst_pointer
 
typedef Exclusion constconst_reference
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef Vector< Debugdebugs
 
typedef debugs::const_iterator idebugs
 

Public Member Functions

void addDebug (Exclusion *e)
 
void removeDebug (float pos, float posm)
 
void setdebug (json *dbgout)
 
idebugs dbgs_begin () const
 
idebugs dbgs_end () const
 
void jsonDbgOut (Segment *seg) const
 
Position position () const
 
 Zones ()
 
template<zones_t O>
void initialise (float xmin, float xmax, float margin_len, float margin_weight, float ao)
 
void exclude (float xmin, float xmax)
 
void exclude_with_margins (float xmin, float xmax, int axis)
 
template<zones_t O>
void weighted (float xmin, float xmax, float f, float a0, float mi, float xi, float ai, float c, bool nega)
 
void weightedAxis (int axis, float xmin, float xmax, float f, float a0, float mi, float xi, float ai, float c, bool nega)
 
float closest (float origin, float &cost) const
 
const_iterator begin () const
 
const_iterator end () const
 
void addDebug (Exclusion *e)
 
void removeDebug (float pos, float posm)
 
void setdebug (json *dbgout)
 
idebugs dbgs_begin () const
 
idebugs dbgs_end () const
 
void jsonDbgOut (Segment *seg) const
 
Position position () const
 
 Zones ()
 
template<zones_t O>
void initialise (float xmin, float xmax, float margin_len, float margin_weight, float ao)
 
void exclude (float xmin, float xmax)
 
void exclude_with_margins (float xmin, float xmax, int axis)
 
template<zones_t O>
void weighted (float xmin, float xmax, float f, float a0, float mi, float xi, float ai, float c, bool nega)
 
void weightedAxis (int axis, float xmin, float xmax, float f, float a0, float mi, float xi, float ai, float c, bool nega)
 
float closest (float origin, float &cost) const
 
const_iterator begin () const
 
const_iterator end () const
 

Private Types

typedef Vector< Exclusionexclusions
 
typedef exclusions::iterator iterator
 
typedef Exclusionpointer
 
typedef Exclusionreference
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef Vector< Exclusionexclusions
 
typedef exclusions::iterator iterator
 
typedef Exclusionpointer
 
typedef Exclusionreference
 
typedef std::reverse_iterator< iteratorreverse_iterator
 

Private Member Functions

void insert (Exclusion e)
 
void remove (float x, float xm)
 
const_iterator find_exclusion_under (float x) const
 
void insert (Exclusion e)
 
void remove (float x, float xm)
 
const_iterator find_exclusion_under (float x) const
 

Private Attributes

exclusions _exclusions
 
json_dbg
 
debugs _dbgs
 
float _margin_len
 
float _margin_weight
 
float _pos
 
float _posm
 

Detailed Description

Definition at line 47 of file Intervals.h.

Member Typedef Documentation

◆ const_iterator [1/2]

◆ const_iterator [2/2]

◆ const_pointer [1/2]

Definition at line 85 of file Intervals.h.

◆ const_pointer [2/2]

Definition at line 85 of file Intervals.h.

◆ const_reference [1/2]

Definition at line 86 of file Intervals.h.

◆ const_reference [2/2]

Definition at line 86 of file Intervals.h.

◆ const_reverse_iterator [1/2]

Definition at line 87 of file Intervals.h.

◆ const_reverse_iterator [2/2]

Definition at line 87 of file Intervals.h.

◆ debugs [1/2]

Definition at line 99 of file Intervals.h.

◆ debugs [2/2]

Definition at line 99 of file Intervals.h.

◆ exclusions [1/2]

Definition at line 76 of file Intervals.h.

◆ exclusions [2/2]

Definition at line 76 of file Intervals.h.

◆ idebugs [1/2]

Definition at line 100 of file Intervals.h.

◆ idebugs [2/2]

Definition at line 100 of file Intervals.h.

◆ iterator [1/2]

Definition at line 78 of file Intervals.h.

◆ iterator [2/2]

Definition at line 78 of file Intervals.h.

◆ pointer [1/2]

Definition at line 79 of file Intervals.h.

◆ pointer [2/2]

Definition at line 79 of file Intervals.h.

◆ reference [1/2]

Definition at line 80 of file Intervals.h.

◆ reference [2/2]

Definition at line 80 of file Intervals.h.

◆ reverse_iterator [1/2]

typedef std::reverse_iterator<iterator> graphite2::Zones::reverse_iterator
private

Definition at line 81 of file Intervals.h.

◆ reverse_iterator [2/2]

typedef std::reverse_iterator<iterator> graphite2::Zones::reverse_iterator
private

Definition at line 81 of file Intervals.h.

Constructor & Destructor Documentation

◆ Zones() [1/2]

graphite2::Zones::Zones ( )
inline

Definition at line 144 of file Intervals.h.

References _dbg, _exclusions, and graphite2::Vector< T >::reserve().

◆ Zones() [2/2]

graphite2::Zones::Zones ( )

Member Function Documentation

◆ addDebug() [1/2]

void graphite2::Zones::addDebug ( Exclusion e)
inline

Definition at line 198 of file Intervals.h.

References _dbg, _dbgs, Debug, e, and graphite2::Vector< T >::push_back().

Referenced by insert().

◆ addDebug() [2/2]

void graphite2::Zones::addDebug ( Exclusion e)

◆ begin() [1/2]

const_iterator graphite2::Zones::begin ( ) const
inline

Definition at line 123 of file Intervals.h.

References _exclusions, and graphite2::Vector< T >::begin().

◆ begin() [2/2]

const_iterator graphite2::Zones::begin ( ) const
inline

Definition at line 123 of file Intervals.h.

References _exclusions, and graphite2::Vector< T >::begin().

◆ closest() [1/2]

float Zones::closest ( float  origin,
float &  cost 
) const

◆ closest() [2/2]

float graphite2::Zones::closest ( float  origin,
float &  cost 
) const

◆ dbgs_begin() [1/2]

idebugs graphite2::Zones::dbgs_begin ( ) const
inline

Definition at line 104 of file Intervals.h.

References _dbgs, and graphite2::Vector< T >::begin().

Referenced by jsonDbgOut().

◆ dbgs_begin() [2/2]

idebugs graphite2::Zones::dbgs_begin ( ) const
inline

Definition at line 104 of file Intervals.h.

References _dbgs, and graphite2::Vector< T >::begin().

◆ dbgs_end() [1/2]

idebugs graphite2::Zones::dbgs_end ( ) const
inline

Definition at line 105 of file Intervals.h.

References _dbgs, and graphite2::Vector< T >::end().

Referenced by jsonDbgOut().

◆ dbgs_end() [2/2]

idebugs graphite2::Zones::dbgs_end ( ) const
inline

Definition at line 105 of file Intervals.h.

References _dbgs, and graphite2::Vector< T >::end().

◆ end() [1/2]

const_iterator graphite2::Zones::end ( ) const
inline

Definition at line 124 of file Intervals.h.

References _exclusions, and graphite2::Vector< T >::end().

◆ end() [2/2]

const_iterator graphite2::Zones::end ( ) const
inline

Definition at line 124 of file Intervals.h.

References _exclusions, and graphite2::Vector< T >::end().

◆ exclude() [1/2]

void graphite2::Zones::exclude ( float  xmin,
float  xmax 
)
inline

Definition at line 176 of file Intervals.h.

References remove().

Referenced by graphite2::ShiftCollider::removeBox().

◆ exclude() [2/2]

void graphite2::Zones::exclude ( float  xmin,
float  xmax 
)

◆ exclude_with_margins() [1/2]

void Zones::exclude_with_margins ( float  xmin,
float  xmax,
int  axis 
)

Definition at line 67 of file Intervals.cpp.

References _margin_len, _margin_weight, remove(), and weightedAxis().

Referenced by graphite2::ShiftCollider::mergeSlot().

◆ exclude_with_margins() [2/2]

void graphite2::Zones::exclude_with_margins ( float  xmin,
float  xmax,
int  axis 
)

◆ find_exclusion_under() [1/2]

Zones::const_iterator Zones::find_exclusion_under ( float  x) const
private

◆ find_exclusion_under() [2/2]

const_iterator graphite2::Zones::find_exclusion_under ( float  x) const
private

◆ initialise() [1/2]

template<zones_t O>
void graphite2::Zones::initialise ( float  xmin,
float  xmax,
float  margin_len,
float  margin_weight,
float  ao 
)
inline

◆ initialise() [2/2]

template<zones_t O>
void graphite2::Zones::initialise ( float  xmin,
float  xmax,
float  margin_len,
float  margin_weight,
float  ao 
)

◆ insert() [1/2]

◆ insert() [2/2]

void graphite2::Zones::insert ( Exclusion  e)
private

◆ jsonDbgOut() [1/2]

◆ jsonDbgOut() [2/2]

void graphite2::Zones::jsonDbgOut ( Segment seg) const

◆ position() [1/2]

Position graphite2::Zones::position ( ) const
inline

Definition at line 107 of file Intervals.h.

References _pos, and _posm.

Referenced by graphite2::ShiftCollider::outputJsonDbg().

◆ position() [2/2]

Position graphite2::Zones::position ( ) const
inline

Definition at line 107 of file Intervals.h.

References _pos, and _posm.

◆ remove() [1/2]

◆ remove() [2/2]

void graphite2::Zones::remove ( float  x,
float  xm 
)
private

◆ removeDebug() [1/2]

void graphite2::Zones::removeDebug ( float  pos,
float  posm 
)
inline

Definition at line 204 of file Intervals.h.

References _dbg, _dbgs, Debug, e, pos, and graphite2::Vector< T >::push_back().

Referenced by remove().

◆ removeDebug() [2/2]

void graphite2::Zones::removeDebug ( float  pos,
float  posm 
)

◆ setdebug() [1/2]

void graphite2::Zones::setdebug ( json dbgout)
inline

Definition at line 103 of file Intervals.h.

References _dbg.

◆ setdebug() [2/2]

void graphite2::Zones::setdebug ( json dbgout)
inline

Definition at line 103 of file Intervals.h.

References _dbg.

◆ weighted() [1/2]

template<zones_t O>
void graphite2::Zones::weighted ( float  xmin,
float  xmax,
float  f,
float  a0,
float  mi,
float  xi,
float  ai,
float  c,
bool  nega 
)
inline

Definition at line 182 of file Intervals.h.

References a0, c, f, insert(), and m.

Referenced by graphite2::ShiftCollider::addBox_slope().

◆ weighted() [2/2]

template<zones_t O>
void graphite2::Zones::weighted ( float  xmin,
float  xmax,
float  f,
float  a0,
float  mi,
float  xi,
float  ai,
float  c,
bool  nega 
)

◆ weightedAxis() [1/2]

void graphite2::Zones::weightedAxis ( int  axis,
float  xmin,
float  xmax,
float  f,
float  a0,
float  mi,
float  xi,
float  ai,
float  c,
bool  nega 
)
inline

Definition at line 188 of file Intervals.h.

References a0, c, f, and m.

Referenced by exclude_with_margins(), and graphite2::ShiftCollider::mergeSlot().

◆ weightedAxis() [2/2]

void graphite2::Zones::weightedAxis ( int  axis,
float  xmin,
float  xmax,
float  f,
float  a0,
float  mi,
float  xi,
float  ai,
float  c,
bool  nega 
)

Member Data Documentation

◆ _dbg

json * graphite2::Zones::_dbg
private

Definition at line 129 of file Intervals.h.

Referenced by addDebug(), jsonDbgOut(), removeDebug(), setdebug(), and Zones().

◆ _dbgs

debugs graphite2::Zones::_dbgs
private

Definition at line 130 of file Intervals.h.

Referenced by addDebug(), dbgs_begin(), dbgs_end(), initialise(), and removeDebug().

◆ _exclusions

exclusions graphite2::Zones::_exclusions
private

Definition at line 127 of file Intervals.h.

Referenced by begin(), closest(), end(), find_exclusion_under(), initialise(), insert(), remove(), and Zones().

◆ _margin_len

float graphite2::Zones::_margin_len
private

Definition at line 132 of file Intervals.h.

Referenced by exclude_with_margins(), and initialise().

◆ _margin_weight

float graphite2::Zones::_margin_weight
private

Definition at line 133 of file Intervals.h.

Referenced by exclude_with_margins(), and initialise().

◆ _pos

float graphite2::Zones::_pos
private

Definition at line 134 of file Intervals.h.

Referenced by initialise(), insert(), position(), and remove().

◆ _posm

float graphite2::Zones::_posm
private

Definition at line 135 of file Intervals.h.

Referenced by initialise(), insert(), position(), and remove().


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