|
|
|||
File indexing completed on 2026-09-27 09:15:18
0001 /** 0002 * @file PandoraSDK/include/Managers/InputObjectManager.h 0003 * 0004 * @brief Header file for the input object manager class. 0005 * 0006 * $Log: $ 0007 */ 0008 #ifndef PANDORA_INPUT_OBJECT_MANAGER 0009 #define PANDORA_INPUT_OBJECT_MANAGER 1 0010 0011 #include "Managers/Manager.h" 0012 0013 namespace pandora 0014 { 0015 0016 /** 0017 * @brief InputObjectManager class 0018 */ 0019 template<typename T> 0020 class InputObjectManager : public Manager<T> 0021 { 0022 public: 0023 /** 0024 * @brief Constructor 0025 * 0026 * @param pPandora address of the associated pandora object 0027 */ 0028 InputObjectManager(const Pandora *const pPandora); 0029 0030 /** 0031 * @brief Destructor 0032 */ 0033 virtual ~InputObjectManager(); 0034 0035 protected: 0036 typedef typename Manager<T>::ObjectList ObjectList; 0037 0038 /** 0039 * @brief Create the input list (accessible to algorithms), using objects created by client application 0040 */ 0041 virtual StatusCode CreateInputList(); 0042 0043 using Manager<T>::CreateTemporaryListAndSetCurrent; 0044 0045 /** 0046 * @brief Change the current list to a specified temporary list 0047 * 0048 * @param pAlgorithm address of the algorithm changing the current list 0049 * @param objectList the specified temporary list 0050 * @param temporaryListName to receive the name of the temporary list 0051 */ 0052 virtual StatusCode CreateTemporaryListAndSetCurrent(const Algorithm *const pAlgorithm, const ObjectList &objectList, 0053 std::string &temporaryListName); 0054 0055 /** 0056 * @brief Save a list of objects in a list with a specified name; create new list if required 0057 * 0058 * @param listName the list name 0059 * @param objectList the object list 0060 */ 0061 virtual StatusCode SaveList(const std::string &listName, const ObjectList &objectList); 0062 0063 /** 0064 * @brief Add objects to a saved list with a specified name 0065 * 0066 * @param listName the list to add the objects to 0067 * @param objectList the list of objects to be added 0068 */ 0069 virtual StatusCode AddObjectsToList(const std::string &listName, const ObjectList &objectList); 0070 0071 /** 0072 * @brief Remove objects from a saved list 0073 * 0074 * @param listName the list to remove the objects from 0075 * @param objectList the list of objects to be removed 0076 */ 0077 virtual StatusCode RemoveObjectsFromList(const std::string &listName, const ObjectList &objectList); 0078 0079 /** 0080 * @brief Rename a saved list, altering its saved name from a specified old list name to a specified new list name 0081 * 0082 * @param oldListName the old list name 0083 * @param newListName the new list name 0084 */ 0085 virtual StatusCode RenameList(const std::string &oldListName, const std::string &newListName); 0086 0087 /** 0088 * @brief Erase all manager content 0089 */ 0090 virtual StatusCode EraseAllContent(); 0091 0092 /** 0093 * @brief Create initial lists 0094 */ 0095 virtual StatusCode CreateInitialLists(); 0096 0097 const std::string m_inputListName; ///< The name of the input list 0098 }; 0099 0100 } // namespace pandora 0101 0102 #endif // #ifndef PANDORA_INPUT_OBJECT_MANAGER
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|