MAK Data Logger API Documentation for HLA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrEntityIdFilter.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef lgrEntityIdFilter_H_
10 #define lgrEntityIdFilter_H_
11 
12 #include <lgrCore/lgrCore.h>
15 #include <lgrCore/lgrSimDriver.h>
17 
18 #include <vlutil/vlString.h>
19 #include <set>
20 
21 namespace MAKLogger
22 {
23 
24  class DtMessageInput;
25  class DtMessageState;
26 
30  {
31 
32  private:
33 
37  DtLgrEntityIdFilter& operator=(const DtLgrEntityIdFilter&);
38 
39  public:
40 
43 
44 
46 
47 
48  virtual ~DtLgrEntityIdFilter();
49 
51  static const DtString& theType();
52 
54  virtual bool filterPacket(DtPacket* packet);
55 
57  virtual const DtString& type() const;
58 
60  virtual void activate(const DtMessageIOInfo* info);
61 
63  virtual void deactivate();
64 
66  virtual char* serialize(int& size) const;
67 
70  virtual int setFromSerialization(const char* data, int size);
71 
73  bool isNameFiltered(const DtString& name) const;
74 
76  virtual void filterEntityName(const DtString& name);
77 
79  virtual void filterEntityNameList(const std::vector<DtString>& nameList);
80 
82  virtual void unfilterAll();
83 
84  protected:
85 
87  virtual void updateEntityIds(DtLgrEntityTracker::EntryHandleSet* oldSet=0);
88 
90  virtual bool isIdFiltered(DtLgrEntityTracker::EntryHandle id) const;
91 
93  virtual DtLgrSimManager* simManager();
94 
96  virtual DtLgrEntityTracker* entityTracker();
97 
99  virtual DtMessageInput* input();
100 
102  virtual DtMessageState* state();
103 
105  virtual DtAbsoluteTime currentTime();
106 
107  protected:
108 
109  typedef std::set<DtString> EntityNameSet;
111 
113 
114  protected:
115 
118  };
119 }
120 
121 #endif
Filter that works on entity ID.
Definition: lgrEntityIdFilter.h:29
#define DT_VIRTUAL_CTR_DEFAULTS(CLASS_NAME, ARG_TYPES_LIST, ARG_DEFAULTS_LIST)
Declare a Virtual Constructor Create using DT_VIRTUAL_CTR_DEFAULTS(CLASS_NAME,ARG_TYPES_LIST,ARG_DEFAULTS_LIST) Where CLASS_NAME = the name of the class being declared Where ARG_TYPES_LIST = a list (ie in side parentheses) of comma seperated types Where ARG_DEFAULTS_LIST = a list (ie in side parentheses) of comma seperated types with default values specified.
Definition: virtualConstructor.h:63
DtLgrEntityTracker::EntryHandleSet myFilteredEntityIds
Definition: lgrEntityIdFilter.h:112
#define DT_VIRTUAL_BASE_CTR(BASE_NAME, ARG_TYPES_LIST)
Declare a Virtual Base Constructor Create using DT_VIRTUAL_CTR(CLASS_NAME,ARG_TYPES_LIST) Where BASE_...
Definition: virtualConstructor.h:118
static DtString theFilterType
The filter type name.
Definition: lgrEntityIdFilter.h:117
Contains MAKLogger::DtLgrPacketFilter class.
The abstract interface for the class responsible for controlling the simulation.
Definition: lgrSimDriver.h:37
Contains DT_VIRTUAL_CTR DT_VIRTUAL_CTR_DEFAULTS DT_VIRTUAL_COPY_ASSIGN DT_VIRTUAL_BASE_CTR DT_PURE_VI...
EntityNameSet myFilteredEntityNames
Definition: lgrEntityIdFilter.h:110
std::set< DtLgrEntityTracker::EntryHandle > EntryHandleSet
Definition: lgrEntityTracker.h:38
The message input is the interface for objects that provide messages into the pipeline.
Definition: messageInput.h:22
Contains MAKLogger::DtLgrSimDriver subclass of MAKLogger::DtLgrCommandHandler.
Base interface class for packet filters.
Definition: lgrPacketFilter.h:25
Implements a protocol independent Simulation manager.
Definition: lgrSimManager.h:40
Contains MAKLogger::DtLgrEntityTracker class.
A message IO info object stores information about a specific message input or output stage...
Definition: messageIoInfo.h:21
A generic packed of typed binary data.
Definition: packet.h:41
std::set< DtString > EntityNameSet
Definition: lgrEntityIdFilter.h:109
#define DT_DLL_LGRCORE
Definition: lgrCore.h:19
Indexes packets in a file.
Definition: lgrEntityTracker.h:32
The Abstract message state maintained by the logger.
Definition: messageState.h:33
int EntryHandle
Definition: lgrEntityTracker.h:37
Absolute Time, a particular measured instance in time, could be thought of as a set of relative times...
Definition: absoluteTime.h:82
Contains lgrCore library definitions.

Document ID: Generated on Thu Dec 18 15:35:09 EST 2025 from SVN revision 282494
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)