My Project
UDK 3.2.7 C/C++ API Reference
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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 _RTL_UNLOAD_H_
20 #define _RTL_UNLOAD_H_
21 
22 #include "sal/config.h"
23 
24 #include "osl/interlck.h"
25 #include "osl/module.h"
26 #include "osl/time.h"
27 #include "sal/saldllapi.h"
28 #include "sal/types.h"
29 
99 #define COMPONENT_CANUNLOAD "component_canUnload"
100 typedef sal_Bool (SAL_CALL * component_canUnloadFunc)( TimeValue* pTime);
101 
102 
105 #ifdef __cplusplus
106 extern "C"
107 {
108 #endif
109 
161 
199 SAL_DLLPUBLIC void SAL_CALL rtl_unloadUnusedModules( TimeValue* libUnused);
200 
206 typedef void (SAL_CALL *rtl_unloadingListenerFunc)(void* id);
221 SAL_DLLPUBLIC sal_Int32 SAL_CALL rtl_addUnloadingListener( rtl_unloadingListenerFunc callback, void* _this);
222 
231 SAL_DLLPUBLIC void SAL_CALL rtl_removeUnloadingListener( sal_Int32 cookie );
232 
233 
263 typedef struct _rtl_ModuleCount
264 {
265  void ( SAL_CALL * acquire ) ( struct _rtl_ModuleCount * that );
266  void ( SAL_CALL * release ) ( struct _rtl_ModuleCount * that );
268 
269 
270 #define MODULE_COUNT_INIT \
271 { {rtl_moduleCount_acquire,rtl_moduleCount_release}, rtl_moduleCount_canUnload, 0, {0, 0}}
272 
281 {
283  sal_Bool ( *canUnload ) ( struct _rtl_StandardModuleCount* a, TimeValue* libUnused);
287 
297 
302 
303 
304 #ifdef __cplusplus
305 }
306 #endif
307 
308 
309 #endif
310 
311 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */