Public Member Functions

rt_latex_processor_interface< InterfaceType > Class Template Reference

The abstract interface for each LaTeX processor module. More...

#include <latex.hpp>

Inheritance diagram for rt_latex_processor_interface< InterfaceType >:
rt_latex_binary_expr_processor< InterfaceType > rt_latex_constant_processor< InterfaceType > rt_latex_function_symbol_processor< InterfaceType > rt_latex_unary_expr_processor< InterfaceType > rt_latex_variable_processor< InterfaceType >

Public Member Functions

virtual std::string process (InterfaceType const *e, bool use_parenthesis, rt_latex_translator< InterfaceType > const &trans) const =0
 The interface for converting an expression 'e' to a LaTeX string.
virtual bool customize (InterfaceType const *e, std::string const &str)
 The interface for customization of output. The expression 'e' is customized to return the LaTeX string 'str'.

Detailed Description

template<typename InterfaceType = default_interface_type>
class viennamath::rt_latex_processor_interface< InterfaceType >

The abstract interface for each LaTeX processor module.

Template Parameters:
InterfaceType The interface to inherit from. Usually rt_expression_interface, but extensions are possible.

Member Function Documentation

virtual bool customize ( InterfaceType const *  e,
std::string const &  str 
) [inline, virtual]

The interface for customization of output. The expression 'e' is customized to return the LaTeX string 'str'.

Parameters:
e Pointer to the ViennaMath runtime expression
str The LaTeX string to be used for the expression referred to be 'e'

Reimplemented in rt_latex_variable_processor< InterfaceType >, and rt_latex_function_symbol_processor< InterfaceType >.

virtual std::string process ( InterfaceType const *  e,
bool  use_parenthesis,
rt_latex_translator< InterfaceType > const &  trans 
) const [pure virtual]

The interface for converting an expression 'e' to a LaTeX string.

Parameters:
e Pointer to a runtime expression
use_parenthesis A flag indicating whether the expression should be wrapped in parentheses in order to preserve priority of evaluation
trans The LaTeX translater object for callback operations when recursively printing expressions

Implemented in rt_latex_binary_expr_processor< InterfaceType >, rt_latex_unary_expr_processor< InterfaceType >, rt_latex_constant_processor< InterfaceType >, rt_latex_variable_processor< InterfaceType >, and rt_latex_function_symbol_processor< InterfaceType >.


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