MAK Data Logger API Documentation for HLA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrHlaInteractionTableFactory.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef lgrHlaInteractionTableFactory_H_
10 #define lgrHlaInteractionTableFactory_H_
11 
12 #if DtHLA
13 
16 
17 class DtDatabaseTable;
18 class DtDatabaseColumn;
20 class DtOMTTree;
21 class DtStringTree;
22 class DtDatatypeManager;
23 
24 #include <omtReader/parameterFedNode.h>
25 #include <vlutil/vlString.h>
26 #include <lgrSim/lgrHlaAttribute.h>
27 #include <map>
28 
29 namespace MAKLogger
30 {
31  class DtBaseInterClassDesc;
32  class DtConstLgrHlaMessage;
33 
37  {
38  public:
39 
42 
45 
46  private:
51  public:
52 
57  virtual const DtString& getTableName(const DtBaseInterClassDesc& interClass);
58 
60  std::vector<DtDatabaseTableSP> createTables(
61  const DtBaseInterClassDesc& classDesc,
62  const DtInteractionClassFedNode& fedNode,
63  const DtConstLgrHlaMessage& hlaMessage );
64 
66  void updateTables( std::vector<DtDatabaseTableSP>& tables,
67  const DtBaseInterClassDesc& classDesc,
68  const DtInteractionClassFedNode& fedNode,
69  const DtConstLgrHlaMessage& hlaMessage);
70 
71  protected:
72 
73  typedef std::map<DtLgrHlaHandle,const DtParameterFedNode*> \
74  ParameterHandleNodeMap;
75 
76  typedef std::map<DtLgrHlaHandle,ParameterHandleNodeMap> \
77  InterClassParamHandleNodeMap;
78 
80  virtual void addDefaultColumns(DtDatabaseTable& table,
81  const DtConstLgrHlaMessage& hlaMessage);
82 
84  virtual void updateDefaultColumns(DtDatabaseTable& table,
85  const DtConstLgrHlaMessage& hlaMessage);
86 
88  const DtParameterFedNode* getParamNode(
89  const DtBaseInterClassDesc& classDesc,
90  DtLgrHlaHandle paramHandle,
91  const DtInteractionClassFedNode& fedNode );
92 
93  DtDatabaseTableSP createSubTable( const DtDatabaseTable& primaryTable,
94  const DtString& subName, std::vector<DtDatabaseTableSP> &tables );
95 
96  void updateSubTableDefaultColumns( const DtDatabaseTable& primaryTable,
97  DtDatabaseTable& currentTable,
98  const DtConstLgrHlaMessage& hlaMessage);
99 
102  };
103 
104 }
105 
106 #endif
107 
108 #endif
DtU32 DtLgrHlaHandle
Logger Psuedo Handle type.
Definition: hlaTimeStampedAttr.h:22
Class responsible for creating tables and encoding an interaction into that table.
Definition: lgrHlaInteractionTableFactory.h:36
Definition: databaseColumn.h:26
#define DT_DLL_SQLEXPORTER
Definition: lgrSqlExporter.h:19
This class handles the conversion between a byte stream and an English readable view of the data in a...
Definition: datatypeManager.h:41
std::map< DtLgrHlaHandle, ParameterHandleNodeMap > InterClassParamHandleNodeMap
Definition: lgrHlaInteractionTableFactory.h:77
Definition: hlaPacket.h:75
InterClassParamHandleNodeMap myInterClassParamNodeMap
Definition: lgrHlaInteractionTableFactory.h:101
Contains MAKLogger::DtLgrHlaHandle typedef and MAKLogger::DtLgrValueReference and MAKLogger::DtLgrVal...
defines an object class inside our Fed Tree
Definition: interactionClassFedNode.h:25
A table is simply a table name and a list of column entries (DtDatabaseColumn).
Definition: databaseTable.h:23
DtString myTableBuffer
Definition: lgrHlaInteractionTableFactory.h:100
Basically a struct with a destructor, a string tree is a collection of indexed strings used to hold m...
Definition: stringTree.h:16
Base HLA table factory.
Definition: lgrHlaTableFactory.h:39
Represents a HLA 1516 Fom Interaction class descriptions.
Definition: baseIntDesc1516.h:33
Contains DtLgrHlaTableFactory class.
A tree using the an OMT File information.
Definition: omtTree.h:58
DtBoost::shared_ptr< DtDatabaseTable > DtDatabaseTableSP
Definition: databaseTable.h:112
Represents an parameter inside a object class.
Definition: parameterFedNode.h:25
Contains MAKLogger.

Document ID: Generated on Thu Sep 2 15:35:22 EDT 2021 from SVN revision 233992
Copyright © 2021 MAK Technologies. All Rights Reserved (www.mak.com)