⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 objectregistry.h

📁 java开源的企业总线.xmlBlaster
💻 H
字号:
// Module:  Log4CPLUS// File:    objectregistry.h// Created: 3/2003// Author:  Tad E. Smith////// Copyright (C) Tad E. Smith  All rights reserved.//// This software is published under the terms of the Apache Software// License version 1.1, a copy of which has been included with this// distribution in the LICENSE.APL file.///** @file */#ifndef LOG4CPLUS_SPI_OBJECT_REGISTRY_HEADER_#define LOG4CPLUS_SPI_OBJECT_REGISTRY_HEADER_#include <log4cplus/config.h>#include <log4cplus/tstring.h>#include <log4cplus/helpers/threads.h>#include <map>#include <memory>#include <vector>namespace log4cplus {    namespace spi {        /**         * This is the base class used to implement the functionality required         * by the ObjectRegistry template class.         */        class LOG4CPLUS_EXPORT ObjectRegistryBase {        public:          // public methods            /**             * Tests to see whether or not an object is bound in the             * registry as <code>name</code>.             */            bool exists(const log4cplus::tstring& name) const;            /**             * Returns the names of all registered objects.             */            std::vector<log4cplus::tstring> getAllNames() const;        protected:          // Ctor and Dtor            ObjectRegistryBase();            virtual ~ObjectRegistryBase();          // protected methods            /**             * Used to enter an object into the registry.  (The registry now             * owns <code>object</code>.)             */            bool putVal(const log4cplus::tstring& name, void* object);            /**             * Used to retrieve an object from the registry.  (The registry             * owns the returned pointer.)             */            void* getVal(const log4cplus::tstring& name) const;            /**             * Deletes <code>object</code>.             */            virtual void deleteObject(void *object) const = 0;            /**             * Deletes all objects from this registry.             */            virtual void clear();          // Types            typedef std::map<log4cplus::tstring, void*> ObjectMap;          // Data            LOG4CPLUS_MUTEX_PTR_DECLARE mutex;            ObjectMap data;        };    }}#endif // LOG4CPLUS_SPI_OBJECT_REGISTRY_HEADER_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -