18 #ifndef DtVrfProcessStateRepositoryManager_H_
19 #define DtVrfProcessStateRepositoryManager_H_
21 #include <vlutil/vlHashlist.h>
77 virtual void addProcessStateRepository(
87 virtual void removeProcessStateRepository(
98 const DtString& procRepName,
bool recurse =
true)
const;
109 virtual void completePSRList(std::list<DtVrfProcessStateRepository*>& psrList)
const;
115 virtual void addProcessStateRepositoryAddedCallback(
120 virtual void removeProcessStateRepositoryAddedCallback(
124 virtual void invokeProcessStateRepositoryAddedCallbacks(
130 virtual void addProcessStateRepositoryAboutToBeRemovedCallback(
135 virtual void removeProcessStateRepositoryAboutToBeRemovedCallback(
139 virtual void invokeProcessStateRepositoryAboutToBeRemovedCallbacks(
143 virtual void putSelf(std::string& fp,
int indentLevel = 0,
144 bool writeUnspecified =
false,
const DtFilename& path =
145 DtFilename::nullFilename());
154 void emptyCallbackList(DtList& listToEmpty);
155 void copyCallbackList(DtList& destList,
const DtList& origList);
163 virtual DtListItem* lookupProcessStateRepositoryItem(
166 virtual void addProcessStateRepositoryAddedCallback(
169 virtual void removeProcessStateRepositoryAddedCallback(
172 virtual void addProcessStateRepositoryAboutToBeRemovedCallback(
175 virtual void removeProcessStateRepositoryAboutToBeRemovedCallback(
196 template <
typename T_PSRType>
198 const std::list<DtVrfProcessStateRepository*>& psrList);
201 template<
typename T_PSRType>
203 const std::list<DtVrfProcessStateRepository*>& psrList)
205 std::list<DtVrfProcessStateRepository*>::const_iterator itr = psrList.begin();
206 std::list<DtVrfProcessStateRepository*>::const_iterator end = psrList.end();
207 for(; itr != end; ++itr)
209 if ((*itr)->name() == psrName)
211 if (T_PSRType* psr = dynamic_cast<T_PSRType*>(*itr))
DtList myAboutToBeRemovedProcessStateRepositoryCallbackList
Definition: vrfProcessStateRepositoryManager.h:184
Iterator for iterating over a DtList of process state repositories.
Definition: vrfProcessStateRepositoryIterator.h:32
A Readable, Writable version of DtList.
Definition: rwList.h:26
class DtVrfProcessStateManagerCallbackInfo:
Definition: vrfProcessStateManagerCallbackInfo.h:26
virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)=0
This method must be overridden by a subclass.
Definition: readerWriterRegistry.h:39
class DtVrfProcessStateRepositoryManager:
Definition: vrfProcessStateRepositoryManager.h:47
DtList myAddedProcessStateRepositoryCallbackList
Definition: vrfProcessStateRepositoryManager.h:185
DtHashlist myHashIndex
Definition: vrfProcessStateRepositoryManager.h:183
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DtVrfProcessStateRepositoryIterator * myIterator
Definition: vrfProcessStateRepositoryManager.h:186
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
virtual void putSelf(std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
Top level call to write itself to file.
Class DtVrfProcessStateRepository: Abstract base class for all process state repositories.
Definition: vrfProcessStateRepository.h:43
std::list< CompatibilityPsrInfo > myCompatibilityPsrs
Definition: vrfProcessStateRepositoryManager.h:189
const DtRwList & operator=(const DtRwList &orig)
Calls down to DtReaderWriter::operator=(). List elements are not copied.
T_PSRType * findPsrByNameAndType(const DtString &psrName, const std::list< DtVrfProcessStateRepository * > &psrList)
Templated function which finds the first occurrence of a PSR in the specified psrList that has the sp...
Definition: vrfProcessStateRepositoryManager.h:202
void(* DtVrfProcessStateManagerCallbackFcn)(DtVrfProcessStateRepository *obj, void *userData)
Definition: vrfProcessStateManagerCallbackInfo.h:17
std::pair< DtString, DtVrfProcessStateRepository * > CompatibilityPsrInfo
Definition: vrfProcessStateRepositoryManager.h:188