VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
subordinateObjectsList.h
Go to the documentation of this file.
1 /**************************************************************************************
2 ** Copyright (c) 2008 MAK Technologies, Inc.
3 ** All rights reserved.
4 **************************************************************************************/
5 /**************************************************************************************
6 ** $RCSfile: trueAggregateSubordinateObjectsList.h,v $ $Revision: 1.1 $ $State: Exp $
7 **************************************************************************************/
8 
11 
12 #ifndef subordinateObjectsList_H_
13 #define subordinateObjectsList_H_
14 
15 #include <readerWriter/rwList.h>
16 
17 class DtListItem;
18 
20 #include "vrfutil/vrfutilDefines.h"
22 {
23 public:
26 
28  DtSubordinateObjectsList(const DtString& name, DtReaderWriterRegistry* parentRegistry = NULL);
29  DtSubordinateObjectsList(const DtSymbolString& name, DtReaderWriterRegistry* parentRegistry = NULL);
30 
33  const DtSubordinateObjectsList& orig,
34  DtReaderWriterRegistry* parentRegistry = NULL);
35 
38  const DtSubordinateObjectsList& orig,
39  DtReaderWriterRegistry* parentRegistry = NULL);
40 
42  virtual ~DtSubordinateObjectsList();
43 
45 
47  virtual const char* readerWriterType() const;
48 
51  virtual void copyListFrom(const DtSubordinateObjectsList& orig);
52 
54  virtual void clear();
55 
57  bool operator==(const DtSubordinateObjectsList&) const;
58  bool operator!=(const DtSubordinateObjectsList&) const;
59 
61  virtual int countIndividualDescendants() const;
62 
63 protected:
66  virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
67  const DtVariableBindingsList& variableBindings);
68 
70  virtual int countIndividualDescendants(const DtSubordinateObjectsList& list)const;
71 
72 };
73 
74 namespace DtBufferSerialize
75 {
78 
81  DT_DLL_vrfutil char *encode(const DtSubordinateObjectsList& val, char *buffer);
82 
86  DT_DLL_vrfutil const char *decode(DtSubordinateObjectsList& val, const char *buffer) ;
87 };
88 
89 
90 #endif
DT_DLL_readerWriter int getSize(const DtString &val)
The number of bytes required to encode the value.
Definition: symbolString.h:20
A Readable, Writable version of DtList. This class cannot be used directly, but must be inherited to ...
Definition: rwList.h:26
bool operator!=(const DtRwList &rhs) const
Definition: rwList.h:157
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...
Definition: readerWriterRegistry.h:39
RW List which holds DtSubordinatesEntry subclasses.
Definition: subordinateObjectsList.h:21
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
bool operator==(const DtRwList &rhs) const
Iterates over all items and calls the factory to compare.
DT_DLL_readerWriter char * encode(const DtFilename &val, char *buffer)
Serializes the provided value val into buffer. buffer must have at least the number of bytes returned...
const DtRwList & operator=(const DtRwList &orig)
Calls down to DtReaderWriter::operator=(). List elements are not copied.
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
virtual const char * readerWriterType() const
Used to supply a string type that this reader writer type is. This can be used in place of dynamic-ca...
DT_DLL_readerWriter const char * decode(DtString &val, const char *buffer)
Decodes a value from buffer and places the result in val of the type specified by val...

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)