NumeRe v1.1.4
NumeRe: Framework für Numerische Rechnungen
NumeRe Namespace Reference

Classes

class  CacheFile
 This class resembles the cache file used to autosave and recover the tables in memory. It is derived from the NumeRe data file format and uses its functionalities to layout the data in the file: the cache file starts with a header containing the number of tables in the file and the character positions in the file, where each table starts. The tables themselves are written in the NumeRe data file format. More...
 
struct  CallTip
 This structure contains the data for a single calltip, which might be shown in the editor or the terminal. More...
 
class  CallTipProvider
 This class uses a global Language instance to obtain the language string associated with a distinct code symbol, prepares the layout of the calltip and returns the calltip with all necessary fields filled. More...
 
class  CassyLabx
 This class resembles the CASSYLab *.labx file format, which is based upon XML. Only reading from this file format is supported. More...
 
class  Cluster
 This class represents a whole cluster. The single items are stored as pointers to the abstract cluster item. This object can be constructed from many different base items and has more or less all memory-like functions. More...
 
class  ClusterDoubleItem
 This is a cluster item, which contains a double. It features conversions to and from strings on-the-fly. More...
 
class  ClusterItem
 This is an abstract cluster item. It is used as root class of any cluster items and only contains the type of the item and virtual functions as interfaces to the child classes. More...
 
class  ClusterManager
 This class is the management class for the different clusters, which are currently available in memory. More...
 
class  ClusterStringItem
 This is a cluster item, which contains a string. It features conversions to and from doubles on-the-fly. More...
 
class  CommaSeparatedValues
 This class resembles a comma separated value file format (*.csv). The algorithm may detect the separator character automatically. Reading and writing is supported for this file format. More...
 
class  Container
 
class  DataBase
 This class is an implementation of a database. It will handle the *.ndb data format an provides an interface to its contained data. More...
 
class  FileAdapter
 This class represents the file input and output adapter for the MemoryManager class, separating memory management from file handling. More...
 
struct  FileHeaderInfo
 This structure wraps all necessary meta information of a single file. More...
 
class  Filter
 This is an abstract base class for any type of a data filter. Requires some methods to be implemented by its child classes. More...
 
struct  FilterSettings
 This structure contains the necessary information to create an instance of one of the following filters. More...
 
class  GaussianFilter
 This class implements a gaussian smoothing or blurring filter. More...
 
class  GenericFile
 Template class representing a generic file. This class may be specified for the main data type contained in the read or written table. All other file classes are derived from this class. This class cannot be instantiated directly, because the read and write methods are declared as pure virtual. More...
 
class  GenericFileView
 This class is a facet for an arbitrary GenericFile instance. It can be used to read the contents of the contained file more easily. More...
 
class  IgorBinaryWave
 This class resembles an Igor binary wave file format (*.ibw). The data is read by the WaveMetrics implementation of the file format. Only reading is supported by this class. More...
 
class  JcampDX
 This class resembles a JCAMP-DX file format (*.jcm, *.jdx, *.dx). The data in this format may be hashed somehow to save storage. Only reading is suported by this class. More...
 
class  LaTeXTable
 This class resembles a LaTeX table. This class formats the data into this format using some heuristics on whether a long table or a standard table is needed to contain the tabular data. Only writing is supported by this file format. More...
 
class  NumeReDataFile
 This class resembles the binary NumeRe data file format. The data is red and written in binary mode using the methods from GenericFile. More...
 
class  OpenDocumentSpreadSheet
 This class resembles an OpenDocument spreadsheet (*.ods), which is based upon a zipped XML file. The data is read using the Zipfile extractor from GenericFile. Only reading is supported by this class. More...
 
class  RetouchRegion
 This class is a specialized WeightedLinearFilter used to retouch missing data values. More...
 
class  SavitzkyGolayDiffFilter
 This class implements a Savitzky-Golay filter for differentiation providing a derivative up to degree three. More...
 
class  SavitzkyGolayFilter
 This class implements a Savitzky-Golay filter, which is a polynomial smoothing filter. More...
 
struct  StringExpression
 This struct encodes a string expression. It tracks the position of an equal sign in the expression indicating the expression part and its assignee. More...
 
class  StringFuncHandler
 This class provides the complete function evaluation logic to the StringParser class. More...
 
class  StringLogicParser
 This class handles all logical operations on string expressions. More...
 
class  StringParser
 This class is the central string expression parser. It is designed as being a singleton with a persistent existence linked to the kernel class. More...
 
class  StringVarFactory
 This class handles the creation and deletion of string vector variables. More...
 
class  Table
 This data container is a copy- efficient table to interchange data between Kernel and GUI. More...
 
struct  TableMetaData
 Encapsulating structure to gather all table meta data information. More...
 
class  TextDataFile
 This class resembles an arbitrary text data file, which is formatted in a table-like manner. The columns may be separated using tabulators and/or whitespace characters. More...
 
class  WeightedLinearFilter
 This class implements a weighted linear smoothing filter, which applies something like a "convergent sliding average" filter. More...
 
class  Window
 This class represents an abstract window handled by the window manager. More...
 
struct  WindowInformation
 This class is used by the window manager to handle the information of an opened window and to store its return value. More...
 
class  WindowManager
 This is the window manager of the kernel. All windows opened by the kernel will be registered here. More...
 
struct  WindowSettings
 This class contains the window information to create the dialog in the GUI. More...
 
struct  WinItemValue
 Kernel representation of the WindowItemValue structure of the CustomWindow class. More...
 
class  XLSSpreadSheet
 This class resembles an Excel (97) workbook (*.xls), which is composed out of a compound file. Reading and writing is done using the BasicExcel library. More...
 
class  XLSXSpreadSheet
 This class resembles an Excel (2003) spreadsheet (*.xlsx), which is based upon a zipped XML file. The data is read using the Zipfile extractor from GenericFile. Only reading is supported by this class. More...
 
class  ZygoDat
 This class implements a Zygo MetroPro binary dat file. The data is read by accessing the ZygoLib. More...
 

Typedefs

typedef GenericFileView FileView
 
using FilterBuffer = std::queue< mu::value_type >
 Typedef for simplifying the usage of the buffer. More...
 
using FilterBuffer2D = std::queue< std::vector< mu::value_type > >
 

Enumerations

enum  WindowType {
  WINDOW_NONE , WINDOW_NON_MODAL , WINDOW_MODAL , WINDOW_GRAPH ,
  WINDOW_CUSTOM , WINDOW_LAST
}
 Enumeration for the window type. More...
 
enum  WindowControls {
  CTRL_NONE = 0x0 , CTRL_OKBUTTON = 0x1 , CTRL_CANCELBUTTON = 0x2 , CTRL_YESNOBUTTON = 0x4 ,
  CTRL_ICONINFORMATION = 0x10 , CTRL_ICONQUESTION = 0x20 , CTRL_ICONWARNING = 0x40 , CTRL_ICONERROR = 0x80 ,
  CTRL_MESSAGEBOX = 0x400 , CTRL_FILEDIALOG = 0x800 , CTRL_FOLDERDIALOG = 0x1000 , CTRL_LISTDIALOG = 0x2000 ,
  CTRL_SELECTIONDIALOG = 0x4000 , CTRL_TEXTENTRY = 0x8000
}
 Enumeration for the contained window controls. More...
 
enum  WindowStatus { STATUS_RUNNING = 0x0 , STATUS_CANCEL = 0x1 , STATUS_OK = 0x2 }
 Enumeration for the status of a displayed dialog. More...
 

Functions

GenericFilegetFileByType (const std::string &filename)
 This function determines the correct class to be used for the filename passed to this function. If there's no fitting file type, a null pointer is returned. The calling function is responsible for clearing the created instance. The returned pointer is of the type GenericFile, but actually references an instance of a derived class. More...
 
double pow2 (double val)
 This function is a simple helper to implement a power of two. More...
 
double pow3 (double val)
 This function is a simple helper to implement a power of three. More...
 
double pow4 (double val)
 This function is a simple helper to implement a power of four. More...
 
FiltercreateFilter (const FilterSettings &_settings)
 This function creates an instance of the filter specified by the passed FilterSettings structure. More...
 
static size_t getOperatorPrecedence (StringView oprt)
 Static function to obtain the passed operator's precedence. More...
 
static void finalizeStack (std::vector< StringStackItem > &rpnStack)
 Static function to finalize the if-else logic in this stack. More...
 
static std::vector< StringStackItemconvertToStack (const std::vector< StringView > &vTokens)
 Static function to convert the tokens to a RPN stack. More...
 
static CallTip realignLangString (std::string sLine)
 Converts the language file documentation layout into something more fitting for the calltips in the graphical user interface. More...
 
static void AppendToDocumentation (CallTip &_cTip, const std::string &sNewDocLine)
 Appends the new documentation line to the already existing line. More...
 
static std::string CleanDocumentation (std::string sDocumentation, std::string &sReturns)
 Checks layout and finishes styling of the documentation string. More...
 
CallTip FindProcedureDefinition (const std::string &pathname, const std::string &procedurename)
 Search the procedure definition in a global file. More...
 
CallTip addLinebreaks (CallTip _cTip, size_t maxLineLength)
 Adds the necessary linebreaks to the documentation part of the CallTip to fit inside the desired maximal line length. More...
 

Typedef Documentation

◆ FileView

Definition at line 1424 of file file.hpp.

◆ FilterBuffer

using NumeRe::FilterBuffer = typedef std::queue<mu::value_type>

Typedef for simplifying the usage of the buffer.

Definition at line 107 of file filtering.hpp.

◆ FilterBuffer2D

using NumeRe::FilterBuffer2D = typedef std::queue<std::vector<mu::value_type> >

Definition at line 108 of file filtering.hpp.

Enumeration Type Documentation

◆ WindowControls

Enumeration for the contained window controls.

Enumerator
CTRL_NONE 
CTRL_OKBUTTON 
CTRL_CANCELBUTTON 
CTRL_YESNOBUTTON 
CTRL_ICONINFORMATION 
CTRL_ICONQUESTION 
CTRL_ICONWARNING 
CTRL_ICONERROR 
CTRL_MESSAGEBOX 
CTRL_FILEDIALOG 
CTRL_FOLDERDIALOG 
CTRL_LISTDIALOG 
CTRL_SELECTIONDIALOG 
CTRL_TEXTENTRY 

Definition at line 58 of file windowmanager.hpp.

◆ WindowStatus

Enumeration for the status of a displayed dialog.

Enumerator
STATUS_RUNNING 
STATUS_CANCEL 
STATUS_OK 

Definition at line 84 of file windowmanager.hpp.

◆ WindowType

Enumeration for the window type.

Enumerator
WINDOW_NONE 
WINDOW_NON_MODAL 
WINDOW_MODAL 
WINDOW_GRAPH 
WINDOW_CUSTOM 
WINDOW_LAST 

Definition at line 43 of file windowmanager.hpp.

Function Documentation

◆ addLinebreaks()

CallTip NumeRe::addLinebreaks ( CallTip  _cTip,
size_t  maxLineLength 
)

Adds the necessary linebreaks to the documentation part of the CallTip to fit inside the desired maximal line length.

Parameters
_cTipCallTip
maxLineLengthsize_t
Returns
CallTip

Definition at line 490 of file calltipprovider.cpp.

References replaceAll(), NumeRe::CallTip::sDefinition, and NumeRe::CallTip::sDocumentation.

Referenced by SearchController::FindProcedureDefinition(), NumeRe::CallTipProvider::getCommand(), NumeRe::CallTipProvider::getFunction(), NumeRe::CallTipProvider::getMethod(), NumeRe::CallTipProvider::getPredef(), NumeRe::CallTipProvider::getProcedure(), and NumeReWindow::OnTreeItemToolTip().

Here is the call graph for this function:

◆ AppendToDocumentation()

static void NumeRe::AppendToDocumentation ( CallTip _cTip,
const std::string &  sNewDocLine 
)
static

Appends the new documentation line to the already existing line.

Parameters
_cTipCallTip&
sNewDocLineconst std::string&
Returns
void

This function appends a found documentation line to the overall documentation and converts some TeX-commands into plain text and applies a rudimentary styling.

Definition at line 103 of file calltipprovider.cpp.

References NumeRe::CallTip::sDocumentation.

Referenced by FindProcedureDefinition().

◆ CleanDocumentation()

static std::string NumeRe::CleanDocumentation ( std::string  sDocumentation,
std::string &  sReturns 
)
static

Checks layout and finishes styling of the documentation string.

Parameters
sDocumentationstd::string
sReturnsstd::string&
Returns
std::string

This function checks the layout of the found documentations and applies some special modifications. Furthermore, the results definition is returned separately.

Definition at line 172 of file calltipprovider.cpp.

References _lang, Language::get(), min, and toUpperCase().

Referenced by FindProcedureDefinition().

Here is the call graph for this function:

◆ convertToStack()

static std::vector< StringStackItem > NumeRe::convertToStack ( const std::vector< StringView > &  vTokens)
static

Static function to convert the tokens to a RPN stack.

Parameters
vTokensconst std::vector<StringView>&
Returns
std::vector<StringStackItem>

Definition at line 1382 of file stringparser.cpp.

References finalizeStack(), and getOperatorPrecedence().

Referenced by NumeRe::StringParser::createStack().

Here is the call graph for this function:

◆ createFilter()

Filter * NumeRe::createFilter ( const FilterSettings _settings)
inline

This function creates an instance of the filter specified by the passed FilterSettings structure.

The Filter will be created on the heap. The calling function is responsible for freeing its memory.

Parameters
_settingsconst FilterSettings&
Returns
Filter*

Definition at line 814 of file filtering.hpp.

References NumeRe::FilterSettings::alpha, NumeRe::FilterSettings::col, NumeRe::FilterSettings::FILTER_GAUSSIAN, NumeRe::FilterSettings::FILTER_NONE, NumeRe::FilterSettings::FILTER_SAVITZKY_GOLAY, NumeRe::FilterSettings::FILTER_WEIGHTED_LINEAR, max, NumeRe::FilterSettings::row, and NumeRe::FilterSettings::type.

Referenced by Memory::smooth().

◆ finalizeStack()

static void NumeRe::finalizeStack ( std::vector< StringStackItem > &  rpnStack)
static

Static function to finalize the if-else logic in this stack.

Parameters
rpnStackstd::vector<StringStackItem>&
Returns
void

Definition at line 1328 of file stringparser.cpp.

Referenced by convertToStack().

◆ FindProcedureDefinition()

CallTip NumeRe::FindProcedureDefinition ( const std::string &  pathname,
const std::string &  procedurename 
)

Search the procedure definition in a global file.

Parameters
pathnameconst std::string&
procedurenameconst std::string&
Returns
CallTip

This function searches for the procedure definition in a selected global procedure file. It also adds the documentation to the CallTip, so that it might be shown in the tooltip.

Definition at line 286 of file calltipprovider.cpp.

References AppendToDocumentation(), CleanDocumentation(), fileExists(), findCommand(), getMatchingParenthesis(), getNextArgument(), min, NumeRe::CallTip::nEnd, NumeRe::CallTip::nStart, NumeRe::CallTip::sDefinition, NumeRe::CallTip::sDocumentation, and StripSpaces().

Referenced by SearchController::FindProcedureDefinition(), NumeRe::CallTipProvider::getProcedure(), and NumeReWindow::OnTreeItemToolTip().

Here is the call graph for this function:

◆ getFileByType()

GenericFile * NumeRe::getFileByType ( const std::string &  filename)

This function determines the correct class to be used for the filename passed to this function. If there's no fitting file type, a null pointer is returned. The calling function is responsible for clearing the created instance. The returned pointer is of the type GenericFile, but actually references an instance of a derived class.

Parameters
filenameconst std::string&
Returns
GenericFile*

Definition at line 45 of file file.cpp.

References FileSystem::getFileParts(), FileSystem::initializeFromKernel(), and toLowerCase().

Referenced by NumeRe::SavitzkyGolayFilter::createKernel(), NumeRe::FileAdapter::openFile(), Memory::save(), and TableViewer::saveTable().

Here is the call graph for this function:

◆ getOperatorPrecedence()

static size_t NumeRe::getOperatorPrecedence ( StringView  oprt)
static

Static function to obtain the passed operator's precedence.

Parameters
oprtStringView
Returns
size_t

Definition at line 1302 of file stringparser.cpp.

Referenced by convertToStack().

◆ pow2()

double NumeRe::pow2 ( double  val)
inline

This function is a simple helper to implement a power of two.

Parameters
valdouble
Returns
double

Definition at line 69 of file filtering.hpp.

Referenced by NumeRe::WeightedLinearFilter::createKernel(), NumeRe::SavitzkyGolayFilter::createKernel(), NumeRe::RetouchRegion::createKernel(), NumeRe::GaussianFilter::createKernel(), and NumeRe::SavitzkyGolayDiffFilter::createKernel().

◆ pow3()

double NumeRe::pow3 ( double  val)
inline

This function is a simple helper to implement a power of three.

Parameters
valdouble
Returns
double

Definition at line 83 of file filtering.hpp.

Referenced by NumeRe::SavitzkyGolayDiffFilter::createKernel().

◆ pow4()

double NumeRe::pow4 ( double  val)
inline

This function is a simple helper to implement a power of four.

Parameters
valdouble
Returns
double

Definition at line 97 of file filtering.hpp.

Referenced by NumeRe::SavitzkyGolayDiffFilter::createKernel().

◆ realignLangString()

static CallTip NumeRe::realignLangString ( std::string  sLine)
static

Converts the language file documentation layout into something more fitting for the calltips in the graphical user interface.

Parameters
sLinestd::string
Returns
CallTip

Definition at line 41 of file calltipprovider.cpp.

References getMatchingParenthesis(), NumeRe::CallTip::nEnd, NumeRe::CallTip::nStart, NumeRe::CallTip::sDefinition, NumeRe::CallTip::sDocumentation, and StripSpaces().

Referenced by NumeRe::CallTipProvider::getCommand(), NumeRe::CallTipProvider::getFunction(), NumeRe::CallTipProvider::getMethod(), and NumeRe::CallTipProvider::getPredef().

Here is the call graph for this function: