FastUIDraw
Classes | Public Types | Public Member Functions | List of all members
fastuidraw::PathEffect Class Referenceabstract

A PathEffect allows one to process a sequence of TessellatedPath::segment_chain, TessellatedPath::join and TessellatedPath::cap values to produce a new sequence of such values for the purpose of effecting stroking. More...

#include <path_effect.hpp>

Inheritance diagram for fastuidraw::PathEffect:
Inheritance graph
[legend]

Classes

class  Storage
 A Storage is to where TessellatedPath::segment, TessellatedPath::join and TessellatedPath::cap values are stored from being processed by a PathEffect. More...
 

Public Types

typedef TessellatedPath::cap cap
 
typedef TessellatedPath::join join
 
typedef TessellatedPath::segment segment
 
typedef TessellatedPath::segment_chain segment_chain
 

Public Member Functions

virtual void process_cap (const TessellatedPath::cap &cap, Storage &dst) const =0
 
template<typename iterator >
void process_caps (iterator begin, iterator end, Storage &dst) const
 
virtual void process_chain (const segment_chain &chain, Storage &dst) const =0
 
template<typename iterator >
void process_chains (iterator begin, iterator end, Storage &dst) const
 
virtual void process_join (const TessellatedPath::join &join, Storage &dst) const =0
 
template<typename iterator >
void process_joins (iterator begin, iterator end, Storage &dst) const
 

Detailed Description

A PathEffect allows one to process a sequence of TessellatedPath::segment_chain, TessellatedPath::join and TessellatedPath::cap values to produce a new sequence of such values for the purpose of effecting stroking.

Definition at line 39 of file path_effect.hpp.

Member Typedef Documentation

◆ cap

Conveniance typedef

Definition at line 60 of file path_effect.hpp.

◆ join

Conveniance typedef

Definition at line 55 of file path_effect.hpp.

◆ segment

Conveniance typedef

Definition at line 50 of file path_effect.hpp.

◆ segment_chain

Conveniance typedef

Definition at line 45 of file path_effect.hpp.

Member Function Documentation

◆ process_cap()

virtual void fastuidraw::PathEffect::process_cap ( const TessellatedPath::cap cap,
Storage dst 
) const
pure virtual

To be implemented by a derived class to process a TessellatedPath::cap value placing the results onto a PathEffect::Storage

Parameters
capTessellatedPath::cap value to process
dstPathEffect::Storage on which to place values

Implemented in fastuidraw::PathDashEffect.

◆ process_caps()

template<typename iterator >
void fastuidraw::PathEffect::process_caps ( iterator  begin,
iterator  end,
Storage dst 
) const
inline

Provided as a template conveniance, equivalent to

for (; begin != end; ++begin)
{
process_cap(*begin, dst);
}
Parameters
beginiterator to first element to process
enditerator to one past last element to process
dstStorage on which to place values

Definition at line 208 of file path_effect.hpp.

◆ process_chain()

virtual void fastuidraw::PathEffect::process_chain ( const segment_chain chain,
Storage dst 
) const
pure virtual

To be implemented by a derived class to process a segment_chain value placing the results onto a PathEffect::Storage

Parameters
chainsegment_chain value to process
dstPathEffect::Storage on which to place values

Implemented in fastuidraw::PathDashEffect.

◆ process_chains()

template<typename iterator >
void fastuidraw::PathEffect::process_chains ( iterator  begin,
iterator  end,
Storage dst 
) const
inline

Provided as a template conveniance, equivalent to

for (; begin != end; ++begin)
{
process_chain(*begin, dst);
}
Parameters
beginiterator to first element to process
enditerator to one past last element to process
dstStorage on which to place values

Definition at line 164 of file path_effect.hpp.

◆ process_join()

virtual void fastuidraw::PathEffect::process_join ( const TessellatedPath::join join,
Storage dst 
) const
pure virtual

To be implemented by a derived class to process a TessellatedPath::join value placing the results onto a PathEffect::Storage

Parameters
joinTessellatedPath::join value to process
dstPathEffect::Storage on which to place values

Implemented in fastuidraw::PathDashEffect.

◆ process_joins()

template<typename iterator >
void fastuidraw::PathEffect::process_joins ( iterator  begin,
iterator  end,
Storage dst 
) const
inline

Provided as a template conveniance, equivalent to

for (; begin != end; ++begin)
{
process_join(*begin, dst);
}
Parameters
beginiterator to first element to process
enditerator to one past last element to process
dstStorage on which to place values

Definition at line 186 of file path_effect.hpp.


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