lyx_mirror/src/mathed/MathExtern.h
Guillaume Munch c51ebd9bbc Remove a deep copy of MathData in lyx::write
This deep copy used to mess with the unique identifier: what TexRow saw was
different from the original uid. There may also be performance improvements.

(Using Georg's suggestion)
2015-10-19 06:55:18 +01:00

51 lines
1.2 KiB
C++

// -*- C++ -*-
/**
* \file MathExtern.h
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* \author André Pönitz
*
* Full author contact details are available in file CREDITS.
*/
#ifndef MATH_EXTERN_H
#define MATH_EXTERN_H
#include "support/strfwd.h"
namespace lyx {
class HtmlStream;
class NormalStream;
class MapleStream;
class MaximaStream;
class MathematicaStream;
class MathStream;
class OctaveStream;
class WriteStream;
class MathData;
void write(MathData const &, WriteStream &);
void htmlize(MathData const &, HtmlStream &);
void normalize(MathData const &, NormalStream &);
void maple(MathData const &, MapleStream &);
void maxima(MathData const &, MaximaStream &);
void mathematica(MathData const &, MathematicaStream &);
void mathmlize(MathData const &, MathStream &);
void octave(MathData const &, OctaveStream &);
bool extractNumber(MathData const & ar, int & i);
bool extractNumber(MathData const & ar, double & i);
/// Write \p s (which may contain math or text contents in LaTeX syntax) to \p os
void writeString(docstring const & s, WriteStream & os);
MathData pipeThroughExtern(std::string const & language,
docstring const & extra, MathData const & ar);
} // namespace lyx
#endif