other-licenses/atk-1.0/atk/atkregistry.h

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 /* ATK - Accessibility Toolkit
     2  * Copyright 2001 Sun Microsystems Inc.
     3  *
     4  * This library is free software; you can redistribute it and/or
     5  * modify it under the terms of the GNU Library General Public
     6  * License as published by the Free Software Foundation; either
     7  * version 2 of the License, or (at your option) any later version.
     8  *
     9  * This library is distributed in the hope that it will be useful,
    10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    12  * Library General Public License for more details.
    13  *
    14  * You should have received a copy of the GNU Library General Public
    15  * License along with this library; if not, write to the
    16  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    17  * Boston, MA 02111-1307, USA.
    18  */
    20 #ifndef __ATK_REGISTRY_H__
    21 #define __ATK_REGISTRY_H__
    23 #ifdef __cplusplus
    24 extern "C" {
    25 #endif /* __cplusplus */
    27 #include <glib-object.h>
    28 #include "atkobjectfactory.h"
    30 #define ATK_TYPE_REGISTRY                (atk_registry_get_type ())
    31 #define ATK_REGISTRY(obj)                (G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_REGISTRY, AtkRegistry))
    32 #define ATK_REGISTRY_CLASS(klass)       (G_TYPE_CHECK_CLASS_CAST ((klass), ATK_TYPE_REGISTRY, AtkRegistryClass))
    33 #define ATK_IS_REGISTRY(obj)            (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATK_TYPE_REGISTRY))
    34 #define ATK_IS_REGISTRY_CLASS(klass)     (G_TYPE_CHECK_CLASS_TYPE ((klass), ATK_TYPE_REGISTRY))
    35 #define ATK_REGISTRY_GET_CLASS(obj)      (G_TYPE_INSTANCE_GET_CLASS ((obj), ATK_TYPE_REGISTRY, AtkRegistryClass))
    37 struct _AtkRegistry
    38 {
    39   GObject    parent;
    40   GHashTable *factory_type_registry;
    41   GHashTable *factory_singleton_cache;
    42 };
    44 struct _AtkRegistryClass
    45 {
    46   GObjectClass    parent_class;
    47 };
    49 typedef struct _AtkRegistry             AtkRegistry;
    50 typedef struct _AtkRegistryClass        AtkRegistryClass;
    53 GType             atk_registry_get_type         (void);
    54 void              atk_registry_set_factory_type (AtkRegistry *registry,
    55                                                  GType type,
    56                                                  GType factory_type);
    57 GType             atk_registry_get_factory_type (AtkRegistry *registry,
    58 						 GType type);
    59 AtkObjectFactory* atk_registry_get_factory      (AtkRegistry *registry,
    60                                                  GType type);
    62 AtkRegistry*      atk_get_default_registry      (void);
    64 #ifdef __cplusplus
    65 }
    66 #endif /* __cplusplus */
    68 #endif /* __ATK_REGISTRY_H__ */

mercurial