VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simArtPartDescriptorList.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 20201 MaK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
6 #pragma once
7 
8 #include <readerWriter/rwList.h>
9 
11 
17 {
18 protected:
19 
22 
23 public:
24 
27  parentRegistry = NULL);
29  parentRegistry = NULL);
30 
32  DtSimArtPartDescriptorList(const DtString& name, const
34  parentRegistry = NULL);
35 
36  DtSimArtPartDescriptorList(const DtSymbolString& name, const
38  parentRegistry = NULL);
39 
44  orig);
45 
47  virtual ~DtSimArtPartDescriptorList() override;
48 
49  virtual DtSimArtPartDescriptorList* clone(const DtString& name,
50  DtReaderWriterRegistry* parentRegistry = NULL);
51  virtual DtSimArtPartDescriptorList* clone(const DtSymbolString& name,
52  DtReaderWriterRegistry* parentRegistry = NULL);
53 
54  virtual DtSimArtPartDescriptor* addArtPartDescriptor(const DtSimArtPartDescriptor& descriptor);
55  virtual void removeArtPartDescriptor(DtSimArtPartDescriptor * descriptor);
56 
57  bool operator==(const DtSimArtPartDescriptorList&) const;
58  bool operator!=(const DtSimArtPartDescriptorList& rhs) const { return !(*this == rhs); };
59 
61  virtual void writeOnlySpecifiedParameters();
62 
64  static const char* theXmlType();
65 
66  virtual const char* xmlType() const override {
67  return theXmlType();
68  }
69 
71  virtual void postGetSelf() override;
72 
73 protected:
74 
76  virtual void emptyList();
77  virtual void copyList(const DtSimArtPartDescriptorList &orig);
78 
81  virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
82  const DtVariableBindingsList& variableBindings) override;
83 
84  virtual DtSimArtPartDescriptor* addArtPartDescriptor(DtSimArtPartDescriptor * descriptor);
85 
89  virtual const char* readerWriterType() const override;
90 
91  std::set<DtSymbolString> myPartNames;
92 };
virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings) override=0
This method must be overridden by a subclass. Within this method, new instances of the DtReaderWriter...
This class allows one to collect and compare strings using an index number instead of having to do st...
Definition: symbolString.h:27
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
A readable, writable type that holds an articulated part type, attached-to part type, attachment point, and a list of art-part params (DtSimArtPartParamList). The read/write name is not used for anything in particular, and therefore may be used for file readability.
Definition: simArtPartDescriptor.h:28
virtual void postGetSelf()
Called after either version of getSelf (mtl or environment). Default is no-op.
static const char * theXmlType()
The type that is used when archiving to an XML stream.
Definition: readerWriterRegistry.h:39
Instances of DtSimArtPartDescriptorList are lists of DtSimArtPartDescriptors. This is an optional par...
Definition: simArtPartDescriptorList.h:16
virtual const char * xmlType() const override
Routines to archive/dearchive from an XML Environment.
Definition: simArtPartDescriptorList.h:66
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
bool operator!=(const DtSimArtPartDescriptorList &rhs) const
Definition: simArtPartDescriptorList.h:58
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
std::set< DtSymbolString > myPartNames
Definition: simArtPartDescriptorList.h:91
bool operator==(const DtRwList &rhs) const
Iterates over all items and calls the factory to compare.
virtual const char * readerWriterType() const override
Used to supply a string type that this reader writer type is. This can be used in place of dynamic-ca...
const DtRwList & operator=(const DtRwList &orig)
Calls down to DtReaderWriter::operator=(). List elements are not copied.

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)