office-gobmx/filter
Noel Grandin 894b4911ff pass DX array around using o3tl::span instead of pointer
so we get bounds checking in debug mode

Note that I cannot just pass around the std::vectors
involved because there is a place in editeng which
calls with a subset of a vector.

Change-Id: I5088a139593c27bf9cbe5d843ab4b0048ac6d508
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124330
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-10-29 12:38:51 +02:00
..
inc
qa drop 'using namespace std' in filter/qa 2021-10-07 14:26:46 +02:00
source pass DX array around using o3tl::span instead of pointer 2021-10-29 12:38:51 +02:00
uiconfig/ui
AllLangMoTarget_flt.mk
Configuration_filter.mk
CppunitTest_filter_dialogs_test.mk
CppunitTest_filter_msfilter.mk
CppunitTest_filter_priority.mk
CppunitTest_filter_svg.mk
CppunitTest_filter_textfilterdetect.mk
CppunitTest_filter_xslt.mk
CustomTarget_svg.mk
IwyuFilter_filter.yaml
JunitTest_filter_complex.mk
Library_filterconfig.mk
Library_graphicfilter.mk
Library_icg.mk
Library_msfilter.mk
Library_odfflatxml.mk
Library_pdffilter.mk
Library_storagefd.mk
Library_svgfilter.mk
Library_t602filter.mk
Library_textfd.mk
Library_xmlfa.mk
Library_xmlfd.mk
Library_xsltdlg.mk
Library_xsltfilter.mk
Makefile
Module_filter.mk
Package_docbook.mk
Package_xhtml.mk
Package_xslt.mk
README.md
UIConfig_filter.mk

LibreOffice Filters

Filter registration and some simple filters (also descriptions).

Desperate splitting of code into small shared libraries for historical reasons presumably (OS/2 and Windows 3.x). The libraries produced from the code in each subdirectory of filter/source/graphicfilter are graphic format import or export filters. But they don't have uniform API. Some have either a GraphicImport or GraphicExport entry point, and are loaded and used in a uniform fashion from code in svtools/source/filter/filter.cxx. Others have different API and are loaded from other places. For instance icgm has ImportCGM, and is loaded and used by sd/source/filter/cgm/sdcgmfilter.cxx (!). Svgreader is used for "File -> Open" and then to choose the svg file. For "Insert -> Picture -> From File", see svgio/source/svgreader directory.

Filter Configuration

The filter configuration consists of two parts, the type definition in filter/source/config/fragments/types/ and the actual filter definition in filter/source/config/fragments/filters/.

Each file type e.g. text file should be represented by exactly one type definition. This type can then be referenced by several different filters, e.g. calc text, writer text.