1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 #ifndef SVTOOLS_ACCESSIBLE_FACTORY_ACCESS_HXX 25 #define SVTOOLS_ACCESSIBLE_FACTORY_ACCESS_HXX 26 27 #include <svtools/accessiblefactory.hxx> 28 29 //........................................................................ 30 namespace svt 31 { 32 //........................................................................ 33 34 //==================================================================== 35 //= AccessibleFactoryAccess 36 //==================================================================== 37 /** a client for the accessibility implementations which have been outsourced 38 from the main svtools library 39 40 All instances of this class share a reference to a common IAccessibleFactory 41 instance, which is used for creating all kind of Accessibility related 42 components. 43 44 When the AccessibleFactoryAccess goes aways, this factory goes aways, to, and the respective 45 library is unloaded. 46 47 This class is not thread-safe. 48 */ 49 class AccessibleFactoryAccess 50 { 51 private: 52 bool m_bInitialized; 53 54 public: 55 AccessibleFactoryAccess(); 56 ~AccessibleFactoryAccess(); 57 58 IAccessibleFactory& getFactory(); 59 60 private: 61 void ensureInitialized(); 62 }; 63 64 //........................................................................ 65 } // namespace svt 66 //........................................................................ 67 68 #endif // SVTOOLS_ACCESSIBLE_FACTORY_ACCESS_HXX 69 70