MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrPduDatabaseEncoderFactory.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2024 MAK Technologies, Inc
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef lgrPduDatabaseEncoderFactory_H_
10 #define lgrPduDatabaseEncoderFactory_H_
11 
12 #if DtDIS
13 
15 
16 #include <vlutil/vlSmartPointers.h>
17 #include <vlpi/disEnums.h>
18 
19 #include <map>
20 
21 namespace MAKLogger
22 {
23 
24  class DtLgrPduDatabaseEncoder;
25 
27  {
28  public:
29 
31  static void registerEncoder(DtPduKind kind,DtLgrPduDatabaseEncoder* encoder);
32 
36  static const DtLgrPduDatabaseEncoder* getEncoder(DtPduKind kind);
37 
39  static void resetEncoder(DtPduKind kind, DtLgrPduDatabaseEncoder* encoder);
40 
43  static void resetFactory();
44 
45  protected:
46 
48  static DtLgrPduDatabaseEncoderFactory* instance();
49 
52 
53  void addEncoder(DtPduKind kind,DtLgrPduDatabaseEncoder* encoder);
54  const DtLgrPduDatabaseEncoder* lookupEncoder(DtPduKind) const;
55 
56  typedef DtBoost::shared_ptr<DtLgrPduDatabaseEncoder> DtLgrPduDatabaseEncoderSP;
57  typedef std::map<DtPduKind,DtLgrPduDatabaseEncoderSP> EncoderMap;
60  };
61 
62 }
63 
64 #endif
65 #endif
Abstract encoder interface.
Definition: lgrPduDatabaseEncoder.h:29
#define DT_DLL_SQLEXPORTER
Definition: lgrSqlExporter.h:19
std::map< DtPduKind, DtLgrPduDatabaseEncoderSP > EncoderMap
Definition: lgrPduDatabaseEncoderFactory.h:57
static DtLgrPduDatabaseEncoderFactory glocalInstace
Definition: lgrPduDatabaseEncoderFactory.h:47
DtBoost::shared_ptr< DtLgrPduDatabaseEncoder > DtLgrPduDatabaseEncoderSP
Definition: lgrPduDatabaseEncoderFactory.h:56
EncoderMap myEncoderMap
Definition: lgrPduDatabaseEncoderFactory.h:58
DtLgrPduDatabaseEncoder * myDefaultEncoder
Definition: lgrPduDatabaseEncoderFactory.h:59
Definition: lgrPduDatabaseEncoderFactory.h:26
Contains MAKLogger.

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)