LibreOffice: rtl/unload.h Source File

LibreOffice LibreOffice 5.1 SDK C/C++ API Reference

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List
- File Members

unload.h
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 #ifndef INCLUDED_RTL_UNLOAD_H
20 #define INCLUDED_RTL_UNLOAD_H
21
22 #include <sal/config.h>
23
24 #include <osl/interlck.h>
25 #include <osl/time.h>
26 #include <sal/saldllapi.h>
27 #include <sal/types.h>
28
33 #ifdef __cplusplus
34 extern "C"
35 {
36 #endif
37
42 typedef struct SAL_DLLPUBLIC_RTTI _rtl_ModuleCount
43 {
44 void ( SAL_CALL * acquire ) ( struct _rtl_ModuleCount * that );
45 void ( SAL_CALL * release ) ( struct _rtl_ModuleCount * that );
46 }rtl_ModuleCount;
47
52 #define MODULE_COUNT_INIT \
53 { {rtl_moduleCount_acquire,rtl_moduleCount_release}, rtl_moduleCount_canUnload, 0, {0, 0}}
54
59 typedef struct _rtl_StandardModuleCount
60 {
61 rtl_ModuleCount modCnt;
62 sal_Bool ( *canUnload ) ( struct _rtl_StandardModuleCount* a, TimeValue* libUnused);
63 oslInterlockedCount counter;
64 TimeValue unusedSince;
65 } rtl_StandardModuleCount;
66
71 SAL_DLLPUBLIC void rtl_moduleCount_acquire(rtl_ModuleCount * that );
72
77 SAL_DLLPUBLIC void rtl_moduleCount_release( rtl_ModuleCount * that );
78
83 SAL_DLLPUBLIC sal_Bool rtl_moduleCount_canUnload( rtl_StandardModuleCount * that, TimeValue* libUnused);
84
85 #ifdef __cplusplus
86 }
87 #endif
88
89
90 #endif
91
92 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
_rtl_ModuleCount
Backwards-compatibility remainder of a removed library unloading feature.
Definition: unload.h:42
_rtl_StandardModuleCount::unusedSince
TimeValue unusedSince
Definition: unload.h:64
SAL_DLLPUBLIC
#define SAL_DLLPUBLIC
Definition: saldllapi.h:30
interlck.h
_rtl_StandardModuleCount::modCnt
rtl_ModuleCount modCnt
Definition: unload.h:61
config.h
_rtl_StandardModuleCount::counter
oslInterlockedCount counter
Definition: unload.h:63
rtl_StandardModuleCount
struct _rtl_StandardModuleCount rtl_StandardModuleCount
Backwards-compatibility remainder of a removed library unloading feature.
sal_Bool
unsigned char sal_Bool
Definition: types.h:48
time.h
rtl_moduleCount_canUnload
SAL_DLLPUBLIC sal_Bool rtl_moduleCount_canUnload(rtl_StandardModuleCount *that, TimeValue *libUnused)
Backwards-compatibility remainder of a removed library unloading feature.
_rtl_ModuleCount::release
void(* release)(struct _rtl_ModuleCount *that)
Definition: unload.h:45
oslInterlockedCount
sal_Int32 oslInterlockedCount
Definition: interlck.h:32
_rtl_StandardModuleCount
Backwards-compatibility remainder of a removed library unloading feature.
Definition: unload.h:59
TimeValue
Definition: time.h:70
rtl_ModuleCount
struct SAL_DLLPUBLIC_RTTI _rtl_ModuleCount rtl_ModuleCount
Backwards-compatibility remainder of a removed library unloading feature.
types.h
rtl_moduleCount_release
SAL_DLLPUBLIC void rtl_moduleCount_release(rtl_ModuleCount *that)
Backwards-compatibility remainder of a removed library unloading feature.
rtl_moduleCount_acquire
SAL_DLLPUBLIC void rtl_moduleCount_acquire(rtl_ModuleCount *that)
Backwards-compatibility remainder of a removed library unloading feature.
saldllapi.h