VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfObjectParametersList.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <readerWriter/rwList.h>
15 #include <tbb/spin_rw_mutex.h>
16 
19 class DtString;
21 class DtListItem;
22 
25 {
26 
27 protected:
30 
31 public:
33  DtVrfObjectParametersList(const DtString & writeName,
34  DtReaderWriterRegistry * const parentRegistry = 0);
35 
36 protected:
39 
42 
43 public:
44 
45  virtual ~DtVrfObjectParametersList();
46 
47  virtual void addParameters(DtVrfObjectParameters * parameters);
48 
49  virtual DtVrfObjectParameters * lookupParameters(
50  const DtObjectType & objectType, DtObjectType * matchingType) const;
51 
53  virtual void removeParameters(const DtObjectType & objectType);
54 
57  virtual void getSelf(DtlObjPtr args,
59  const DtVariableBindingsList& variableBindings = nullVariableReference());
60 
63  virtual DtlObjPtr getData(DtlObjPtr args,
64  const DtReaderWriter::SearchPaths& searchPaths,
65  const DtVariableBindingsList& variableBindings);
66 
67  virtual void inheritValuesFromAncestors();
68 
72  void emptyList();
73 
74 protected:
75 
76  virtual DtListItem * lookupParameters(const DtObjectType & objectType) const;
77 
78 protected:
79 
83  mutable tbb::spin_rw_mutex myMutex;
84 };
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:63
A Readable, Writable version of DtList. This class cannot be used directly, but must be inherited to ...
Definition: rwList.h:26
#define DT_DLL_vrfobjparam
This file is used to determine how to build.
Definition: vrfobjparamDefines.h:28
virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)=0
This method must be overridden by a subclass. Within this method, new instances of the DtReaderWriter...
DtString myNameFromStream
For backward compatibility with version 1.x parameter files. Name of the object from the mtl stream...
Definition: vrfObjectParametersList.h:82
Definition: readerWriterRegistry.h:39
tbb::spin_rw_mutex myMutex
Definition: vrfObjectParametersList.h:83
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
static const DtVariableBindingsList & nullVariableReference()
const DtRwList & operator=(const DtRwList &orig)
Calls down to DtReaderWriter::operator=(). List elements are not copied.
Definition: vrfObjectParametersList.h:24
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream. searchPath is passed down to all DtReaderWriter member...

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)