My Project
UDK 3.2.7 C/C++ API Reference
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
rtl
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
*
4
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5
*
6
* Copyright 2000, 2010 Oracle and/or its affiliates.
7
*
8
* OpenOffice.org - a multi-platform office productivity suite
9
*
10
* This file is part of OpenOffice.org.
11
*
12
* OpenOffice.org is free software: you can redistribute it and/or modify
13
* it under the terms of the GNU Lesser General Public License version 3
14
* only, as published by the Free Software Foundation.
15
*
16
* OpenOffice.org is distributed in the hope that it will be useful,
17
* but WITHOUT ANY WARRANTY; without even the implied warranty of
18
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
* GNU Lesser General Public License version 3 for more details
20
* (a copy is included in the LICENSE file that accompanied this code).
21
*
22
* You should have received a copy of the GNU Lesser General Public License
23
* version 3 along with OpenOffice.org. If not, see
24
* <http://www.openoffice.org/license.html>
25
* for a copy of the LGPLv3 License.
26
*
27
************************************************************************/
28
#ifndef _RTL_UNLOAD_H_
29
#define _RTL_UNLOAD_H_
30
31
#include <
sal/types.h
>
32
#include <
osl/time.h
>
33
#include <
osl/interlck.h
>
34
#include <
osl/module.h
>
35
105
#define COMPONENT_CANUNLOAD "component_canUnload"
106
typedef
sal_Bool
(SAL_CALL *
component_canUnloadFunc
)(
TimeValue
* pTime);
107
108
111
#ifdef __cplusplus
112
extern
"C"
113
{
114
#endif
115
166
SAL_DLLPUBLIC
sal_Bool
SAL_CALL
rtl_registerModuleForUnloading
(
oslModule
module);
167
179
SAL_DLLPUBLIC
void
SAL_CALL
rtl_unregisterModuleForUnloading
(
oslModule
module);
205
SAL_DLLPUBLIC
void
SAL_CALL
rtl_unloadUnusedModules
(
TimeValue
* libUnused);
206
212
typedef
void (SAL_CALL *
rtl_unloadingListenerFunc
)(
void
* id);
227
SAL_DLLPUBLIC
sal_Int32 SAL_CALL
rtl_addUnloadingListener
(
rtl_unloadingListenerFunc
callback,
void
* _this);
228
237
SAL_DLLPUBLIC
void
SAL_CALL
rtl_removeUnloadingListener
( sal_Int32 cookie );
238
239
269
typedef
struct
_rtl_ModuleCount
270
{
271
void ( SAL_CALL *
acquire
) (
struct
_rtl_ModuleCount
* that );
272
void ( SAL_CALL *
release
) (
struct
_rtl_ModuleCount
* that );
273
}
rtl_ModuleCount
;
274
275
276
#define MODULE_COUNT_INIT \
277
{ {rtl_moduleCount_acquire,rtl_moduleCount_release}, rtl_moduleCount_canUnload, 0, {0, 0}}
278
286
typedef
struct
_rtl_StandardModuleCount
287
{
288
rtl_ModuleCount
modCnt
;
289
sal_Bool
( *
canUnload
) (
struct
_rtl_StandardModuleCount
* a,
TimeValue
* libUnused);
290
oslInterlockedCount
counter
;
291
TimeValue
unusedSince
;
292
}
rtl_StandardModuleCount
;
293
297
SAL_DLLPUBLIC
void
rtl_moduleCount_acquire
(
rtl_ModuleCount
* that );
302
SAL_DLLPUBLIC
void
rtl_moduleCount_release
(
rtl_ModuleCount
* that );
303
307
SAL_DLLPUBLIC
sal_Bool
rtl_moduleCount_canUnload
(
rtl_StandardModuleCount
* that,
TimeValue
* libUnused);
308
309
310
#ifdef __cplusplus
311
}
312
#endif
313
314
315
#endif
316
317
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Generated on Mon Oct 8 2012 00:36:42 for My Project by
1.8.1.2