diff options
author | Brad Linden <brad@lindenlab.com> | 2024-05-23 11:31:19 -0700 |
---|---|---|
committer | Brad Linden <brad@lindenlab.com> | 2024-05-23 11:31:19 -0700 |
commit | a1f49564d670a2c41bfa25c833bba2564b9b7f48 (patch) | |
tree | 1d205e51bc37621916a17d459ad83782fe41f975 /indra/llcommon/llinitdestroyclass.h | |
parent | 6af5db09faf5ea33a2d4c47b64e76f42edae178a (diff) | |
parent | 6377610f6587989c126b00f490dfc8d527a1c2ce (diff) |
Merge remote-tracking branch 'origin/DRTVWR-600-maint-A' into brad/merge-maint-a-to-dev
Diffstat (limited to 'indra/llcommon/llinitdestroyclass.h')
-rw-r--r-- | indra/llcommon/llinitdestroyclass.h | 86 |
1 files changed, 43 insertions, 43 deletions
diff --git a/indra/llcommon/llinitdestroyclass.h b/indra/llcommon/llinitdestroyclass.h index 5f979614fe..2354c9f2ed 100644 --- a/indra/llcommon/llinitdestroyclass.h +++ b/indra/llcommon/llinitdestroyclass.h @@ -50,21 +50,21 @@ class LLCallbackRegistry { public: - typedef boost::function<void()> func_t; + typedef boost::function<void()> func_t; - void registerCallback(const std::string& name, const func_t& func) - { - mCallbacks.push_back(FuncList::value_type(name, func)); - } + void registerCallback(const std::string& name, const func_t& func) + { + mCallbacks.push_back(FuncList::value_type(name, func)); + } - void fireCallbacks() const; + void fireCallbacks() const; private: - // Arguably this should be a boost::signals2::signal, which is, after all, - // a sequence of callables. We manage it by hand so we can log a name for - // each registered function we call. - typedef std::vector< std::pair<std::string, func_t> > FuncList; - FuncList mCallbacks; + // Arguably this should be a boost::signals2::signal, which is, after all, + // a sequence of callables. We manage it by hand so we can log a name for + // each registered function we call. + typedef std::vector< std::pair<std::string, func_t> > FuncList; + FuncList mCallbacks; }; /** @@ -74,11 +74,11 @@ private: * (before main()), requiring LLInitClassList to be fully constructed on * demand regardless of module initialization order. */ -class LLInitClassList : - public LLCallbackRegistry, - public LLSingleton<LLInitClassList> +class LLInitClassList : + public LLCallbackRegistry, + public LLSingleton<LLInitClassList> { - LLSINGLETON_EMPTY_CTOR(LLInitClassList); + LLSINGLETON_EMPTY_CTOR(LLInitClassList); }; /** @@ -88,11 +88,11 @@ class LLInitClassList : * time (before main()), requiring LLDestroyClassList to be fully constructed * on demand regardless of module initialization order. */ -class LLDestroyClassList : - public LLCallbackRegistry, - public LLSingleton<LLDestroyClassList> +class LLDestroyClassList : + public LLCallbackRegistry, + public LLSingleton<LLDestroyClassList> { - LLSINGLETON_EMPTY_CTOR(LLDestroyClassList); + LLSINGLETON_EMPTY_CTOR(LLDestroyClassList); }; /** @@ -105,19 +105,19 @@ template<typename T> class LLRegisterWith { public: - LLRegisterWith(const std::string& name, const LLCallbackRegistry::func_t& func) - { - T::instance().registerCallback(name, func); - } - - // this avoids a MSVC bug where non-referenced static members are "optimized" away - // even if their constructors have side effects - S32 reference() - { - S32 dummy; - dummy = 0; - return dummy; - } + LLRegisterWith(const std::string& name, const LLCallbackRegistry::func_t& func) + { + T::instance().registerCallback(name, func); + } + + // this avoids a MSVC bug where non-referenced static members are "optimized" away + // even if their constructors have side effects + S32 reference() + { + S32 dummy; + dummy = 0; + return dummy; + } }; /** @@ -133,11 +133,11 @@ template<typename T> class LLInitClass { public: - LLInitClass() { sRegister.reference(); } + LLInitClass() { sRegister.reference(); } - // When this static member is initialized, the subclass initClass() method - // is registered on LLInitClassList. See sRegister definition below. - static LLRegisterWith<LLInitClassList> sRegister; + // When this static member is initialized, the subclass initClass() method + // is registered on LLInitClassList. See sRegister definition below. + static LLRegisterWith<LLInitClassList> sRegister; }; /** @@ -153,23 +153,23 @@ template<typename T> class LLDestroyClass { public: - LLDestroyClass() { sRegister.reference(); } + LLDestroyClass() { sRegister.reference(); } - // When this static member is initialized, the subclass destroyClass() - // method is registered on LLInitClassList. See sRegister definition - // below. - static LLRegisterWith<LLDestroyClassList> sRegister; + // When this static member is initialized, the subclass destroyClass() + // method is registered on LLInitClassList. See sRegister definition + // below. + static LLRegisterWith<LLDestroyClassList> sRegister; }; // Here's where LLInitClass<T> specifies the subclass initClass() method. template <typename T> LLRegisterWith<LLInitClassList> LLInitClass<T>::sRegister(std::string(typeid(T).name()) + "::initClass", - &T::initClass); + &T::initClass); // Here's where LLDestroyClass<T> specifies the subclass destroyClass() method. template <typename T> LLRegisterWith<LLDestroyClassList> LLDestroyClass<T>::sRegister(std::string(typeid(T).name()) + "::destroyClass", - &T::destroyClass); + &T::destroyClass); #endif /* ! defined(LL_LLINITDESTROYCLASS_H) */ |