MAK Data Logger API Documentation for HLA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
baseHlaClass.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2024 MAK Technologies, Inc
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #if DtHLA
11 #ifndef baseHlaClass_H_
12 #define baseHlaClass_H_
13 
14 #include <lgrSim/baseHlaValue.h>
15 #include <vector>
16 
17 namespace MAKLogger
18 {
19 
22  template <typename ValueType>
23  class DtBaseHlaClass : virtual public DtBaseHlaValue
24  {
25  public:
26  typedef std::vector<ValueType> ValueVector;
27  typedef typename ValueVector::iterator iterator;
28  typedef typename ValueVector::const_iterator const_iterator;
29 
30  public:
31 
35 
37  DtBaseHlaClass(const DtString& name,const DtString& baseClassName,
39 
44 
49 
51  virtual ~DtBaseHlaClass();
52 
54  inline const DtString& baseName() const;
55 
57  DtString simpleName() const;
58 
60  inline const char* baseName2print() const;
61 
65  void setBaseNameOnly(const DtString& name0);
66 
71  const DtBaseHlaClass<ValueType>* baseClass() const;
73 
78 
81  bool isOfClass( DtLgrHlaHandle handle ) const;
82 
85  bool isOfClass( const DtString& name ) const;
86 
88  bool isOfClass( const DtBaseHlaClass& baseClass) const;
89 
92  void addValue(const ValueType& value);
93 
95  void clearValues();
96 
100  int valueCount(bool thisClassOnly) const;
101 
106  int minHandle(bool thisClassOnly) const;
107 
112  int maxHandle(bool thisClassOnly) const;
113 
114 
116  iterator begin();
118  const_iterator begin() const;
120 
122  iterator end();
124  const_iterator end() const;
126 
127 
129  ValueType* findValueByName(const DtString& name,bool thisClassOnly);
134  const ValueType* findValueByName(const DtString& name,bool thisClassOnly) const;
136 
138  ValueType* findValueByHandle(DtLgrHlaHandle handle,bool thisClassOnly);
143  const ValueType* findValueByHandle(DtLgrHlaHandle handle,bool thisClassOnly) const;
145 
146  private:
150  };
151 
152 }
153 
154 #define baseHlaClass_INC_
155 #include "baseHlaClass.inl"
156 #undef baseHlaClass_INC_
157 
158 #endif
159 #endif
Contains MAKLogger::DtBaseHlaValue class.
Base Hla Value object.
Definition: baseHlaValue.h:47
DtBaseHlaClass< ValueType > * myBaseClass
Definition: baseHlaClass.h:148
void addValue(const ValueType &value)
Add a value to the class.
DtU32 DtLgrHlaHandle
Logger Psuedo Handle type.
Definition: hlaTimeStampedAttr.h:22
int minHandle(bool thisClassOnly) const
Get the minum handle of its values; If thisClassOnly = true, only this class will be checked...
DtBaseHlaClass(const DtString &name, DtBaseHlaClass< ValueType > *baseClass, DtLgrHlaHandle handle)
Constructor with valid pointer to base class object.
iterator end()
Get iterator past last value.
int maxHandle(bool thisClassOnly) const
Get the maximum handle of its values; If thisClassOnly = true, only this class will be checked...
virtual ~DtBaseHlaClass()
DTOR.
void setBaseNameOnly(const DtString &name0)
Set the base class name.
void clearValues()
Clears all values added.
const DtString & name() const
DtBaseHlaClass< ValueType > & operator=(const DtBaseHlaClass< ValueType > &src)
Assignment operator.
void setBaseClass(DtBaseHlaClass< ValueType > *baseClass)
Set the base class pointer.
int valueCount(bool thisClassOnly) const
Get the number of values in this class.
ValueVector::iterator iterator
Definition: baseHlaClass.h:27
std::vector< ValueType > ValueVector
Definition: baseHlaClass.h:26
A generic Hla class (used by both Objects and Interactions).
Definition: baseHlaClass.h:23
iterator begin()
Get iterator to first value.
ValueType * findValueByName(const DtString &name, bool thisClassOnly)
Look up a value by its name.
DtString myBaseName
Definition: baseHlaClass.h:147
const DtString & baseName() const
Get the base class name, it can be empty.
ValueVector::const_iterator const_iterator
Definition: baseHlaClass.h:28
const char * baseName2print() const
Get a raw pointer to the base name for printing.
DtString simpleName() const
Get the simple class name, which does not include the base name.
DtBaseHlaClass< ValueType > * baseClass()
Get the base class.
ValueType * findValueByHandle(DtLgrHlaHandle handle, bool thisClassOnly)
Look up a value by its handle.
ValueVector myValues
Definition: baseHlaClass.h:149
bool isOfClass(DtLgrHlaHandle handle) const
Checks whether this class is or inherits from a class with the handle.
DtLgrHlaHandle handle() const
Definition: baseHlaValue.h:84

Document ID: Generated on Fri May 31 15:45:35 EDT 2024 from SVN revision 266500
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)