LibreOffice Module starmath (master)
1
starmath
source
eqnolefilehdr.hxx
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
/*
3
* This file is part of the LibreOffice project.
4
*
5
* This Source Code Form is subject to the terms of the Mozilla Public
6
* License, v. 2.0. If a copy of the MPL was not distributed with this
7
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
*
9
* This file incorporates work covered by the following license notice:
10
*
11
* Licensed to the Apache Software Foundation (ASF) under one or more
12
* contributor license agreements. See the NOTICE file distributed
13
* with this work for additional information regarding copyright
14
* ownership. The ASF licenses this file to you under the Apache
15
* License, Version 2.0 (the "License"); you may not use this file
16
* except in compliance with the License. You may obtain a copy of
17
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
18
*/
19
20
#pragma once
21
22
#include <
sal/types.h
>
23
#include <
tools/stream.hxx
>
24
25
class
SotStorage
;
26
27
#define EQNOLEFILEHDR_SIZE 28
28
29
class
EQNOLEFILEHDR
30
{
31
public
:
32
EQNOLEFILEHDR
() :
nCBHdr
(0),
nVersion
(0),
33
nCf
(0),
nCBObject
(0),
nReserved1
(0),
nReserved2
(0),
34
nReserved3
(0),
nReserved4
(0) {}
35
explicit
EQNOLEFILEHDR
(sal_uInt32 nLenMTEF) :
nCBHdr
(0x1c),
nVersion
(0x20000),
36
nCf
(0xc1c6),
nCBObject
(nLenMTEF),
nReserved1
(0),
nReserved2
(0x0014F690),
37
nReserved3
(0x0014EBB4),
nReserved4
(0) {}
38
39
sal_uInt16
nCBHdr
;
// length of header, sizeof(EQNOLEFILEHDR) = 28
40
sal_uInt32
nVersion
;
// hiword = 2, loword = 0
41
sal_uInt16
nCf
;
// clipboard format ("MathType EF")
42
sal_uInt32
nCBObject
;
// length of MTEF data following this header
43
sal_uInt32
nReserved1
;
// not used
44
sal_uInt32
nReserved2
;
// not used
45
sal_uInt32
nReserved3
;
// not used
46
sal_uInt32
nReserved4
;
// not used
47
48
void
Read
(
SvStream
* pS)
49
{
50
pS
->ReadUInt16(
nCBHdr
);
51
pS
->ReadUInt32(
nVersion
);
52
pS
->ReadUInt16(
nCf
);
53
pS
->ReadUInt32(
nCBObject
);
54
pS
->ReadUInt32(
nReserved1
);
55
pS
->ReadUInt32(
nReserved2
);
56
pS
->ReadUInt32(
nReserved3
);
57
pS
->ReadUInt32(
nReserved4
);
58
}
59
void
Write
(
SvStream
* pS)
60
{
61
pS
->WriteUInt16(
nCBHdr
);
62
pS
->WriteUInt32(
nVersion
);
63
pS
->WriteUInt16(
nCf
);
64
pS
->WriteUInt32(
nCBObject
);
65
pS
->WriteUInt32(
nReserved1
);
66
pS
->WriteUInt32(
nReserved2
);
67
pS
->WriteUInt32(
nReserved3
);
68
pS
->WriteUInt32(
nReserved4
);
69
}
70
};
71
72
bool
GetMathTypeVersion
(
SotStorage
* pStor,
sal_uInt8
&nVersion );
73
74
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
EQNOLEFILEHDR
Definition:
eqnolefilehdr.hxx:30
EQNOLEFILEHDR::nReserved4
sal_uInt32 nReserved4
Definition:
eqnolefilehdr.hxx:46
EQNOLEFILEHDR::EQNOLEFILEHDR
EQNOLEFILEHDR(sal_uInt32 nLenMTEF)
Definition:
eqnolefilehdr.hxx:35
EQNOLEFILEHDR::Read
void Read(SvStream *pS)
Definition:
eqnolefilehdr.hxx:48
EQNOLEFILEHDR::nCBHdr
sal_uInt16 nCBHdr
Definition:
eqnolefilehdr.hxx:39
EQNOLEFILEHDR::nReserved1
sal_uInt32 nReserved1
Definition:
eqnolefilehdr.hxx:43
EQNOLEFILEHDR::nReserved3
sal_uInt32 nReserved3
Definition:
eqnolefilehdr.hxx:45
EQNOLEFILEHDR::nCf
sal_uInt16 nCf
Definition:
eqnolefilehdr.hxx:41
EQNOLEFILEHDR::nReserved2
sal_uInt32 nReserved2
Definition:
eqnolefilehdr.hxx:44
EQNOLEFILEHDR::EQNOLEFILEHDR
EQNOLEFILEHDR()
Definition:
eqnolefilehdr.hxx:32
EQNOLEFILEHDR::nCBObject
sal_uInt32 nCBObject
Definition:
eqnolefilehdr.hxx:42
EQNOLEFILEHDR::nVersion
sal_uInt32 nVersion
Definition:
eqnolefilehdr.hxx:40
EQNOLEFILEHDR::Write
void Write(SvStream *pS)
Definition:
eqnolefilehdr.hxx:59
SotStorage
SvStream
pS
const char * pS
GetMathTypeVersion
bool GetMathTypeVersion(SotStorage *pStor, sal_uInt8 &nVersion)
Definition:
eqnolefilehdr.cxx:24
stream.hxx
types.h
sal_uInt8
unsigned char sal_uInt8
Generated on Sun Jul 30 2023 04:34:37 for LibreOffice Module starmath (master) by
1.9.3