VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
entityTypeRange.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2024 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <vlutil/vlString.h>
12 #include <vlpi/entityType.h>
13 #include <vlutil/vlMachineTypes.h>
14 
15 #include <map>
16 
20 {
21 public:
22 
24  DtEntityTypeRange(const char* p);
25 
27  DtEntityTypeRange(int kind, int domain, int country, int category,
28  int subCategory, int specific, int extra);
29 
32 
35 
37  virtual ~DtEntityTypeRange();
38 
40  const char *string() const;
41 
42  int lowerKind() const { return(DtEntityKind); }
43  int lowerDomain() const { return(DtDomain); }
44  int lowerCountry() const { return(DtCountry); }
45  int lowerCategory() const { return(DtCategory); }
46  int lowerSubCategory() const { return(DtSubCategory); }
47  int lowerSpecific() const { return(DtSpecific); }
48  int lowerExtra() const { return(DtExtra); }
49 
50  void setLowerKind(int val){ DtEntityKind = val; }
51  void setLowerDomain(int val){ DtDomain = val; }
52  void setLowerCountry(int val){ DtCountry = val; }
53  void setLowerCategory(int val){ DtCategory = val; }
54  void setLowerSubCategory(int val){ DtSubCategory = val; }
55  void setLowerSpecific(int val){ DtSpecific = val; }
56  void setLowerExtra(int val){ DtExtra = val; }
57 
58  int upperKind() const { return(myUpperKind); }
59  int upperDomain() const { return(myUpperDomain); }
60  int upperCountry() const { return(myUpperCountry); }
61  int upperCategory() const { return(myUpperCategory); }
62  int upperSubCategory() const { return(myUpperSubCategory); }
63  int upperSpecific() const { return(myUpperSpecific); }
64  int upperExtra() const { return(myUpperExtra); }
65 
66  void setUpperKind(int val){ myUpperKind = val; }
67  void setUpperDomain(int val){ myUpperDomain = val; }
68  void setUpperCountry(int val){ myUpperCountry = val; }
69  void setUpperCategory(int val){ myUpperCategory = val; }
70  void setUpperSubCategory(int val){ myUpperSubCategory = val; }
71  void setUpperSpecific(int val){ myUpperSpecific = val; }
72  void setUpperExtra(int val){ myUpperExtra = val; }
73 
74  bool matchPattern(const DtEntityType &pat) const;
75 
76  int operator==(const DtEntityTypeRange &type) const;
77  int operator!=(const DtEntityTypeRange &type) const;
78 
81  bool operator<(const DtEntityTypeRange &type) const;
82 
83  static const DtEntityTypeRange& AllEntityTypes();
84 
85 protected:
86 
87  int isInRange(int val, int lwr, int upr) const;
88 
96 
98 };
99 
100 
void setLowerSpecific(int val)
Definition: entityTypeRange.h:55
void setUpperSubCategory(int val)
Definition: entityTypeRange.h:70
Contains the DtString class declaration.
int upperSubCategory() const
Definition: entityTypeRange.h:62
Contains the DtEntityType and DtRadioEntityType class declarations.
int upperCategory() const
Definition: entityTypeRange.h:61
int operator==(const DtEntityType &type) const
int lowerCountry() const
Definition: entityTypeRange.h:44
int myUpperKind
Definition: entityTypeRange.h:89
DtEntityKind
We use enumerated types instead of manifest constants so that cross-type assignment mistakes can be c...
Definition: entityTypes.h:22
int operator!=(const DtEntityType &type) const
void setUpperSpecific(int val)
Definition: entityTypeRange.h:71
int upperSpecific() const
Definition: entityTypeRange.h:63
void setUpperCategory(int val)
Definition: entityTypeRange.h:69
void setLowerCountry(int val)
Definition: entityTypeRange.h:52
Specifies a range of entity types, where each individual field can match a a range of values or a sin...
Definition: entityTypeRange.h:19
int lowerDomain() const
Definition: entityTypeRange.h:43
void setUpperDomain(int val)
Definition: entityTypeRange.h:67
int lowerCategory() const
Definition: entityTypeRange.h:45
int myUpperSubCategory
Definition: entityTypeRange.h:93
void setUpperExtra(int val)
Definition: entityTypeRange.h:72
void setUpperCountry(int val)
Definition: entityTypeRange.h:68
void setLowerDomain(int val)
Definition: entityTypeRange.h:51
int lowerSubCategory() const
Definition: entityTypeRange.h:46
void setLowerExtra(int val)
Definition: entityTypeRange.h:56
int upperExtra() const
Definition: entityTypeRange.h:64
int lowerSpecific() const
Definition: entityTypeRange.h:47
const char * string() const
returns a string representation of this instance in the form 1:2:3:4:5:6:7
void setUpperKind(int val)
Definition: entityTypeRange.h:66
bool operator<(const DtEntityType &type) const
Returns true if the entity type is smaller.
#define DT_DLL_VLPROTIND
Definition: vlMachineTypes.h:110
void setLowerSubCategory(int val)
Definition: entityTypeRange.h:54
int lowerExtra() const
Definition: entityTypeRange.h:48
int lowerKind() const
Definition: entityTypeRange.h:42
void setLowerKind(int val)
Definition: entityTypeRange.h:50
bool matchPattern(const DtEntityType &pat) const
int myUpperExtra
Definition: entityTypeRange.h:95
int myUpperSpecific
Definition: entityTypeRange.h:94
int myUpperDomain
Definition: entityTypeRange.h:90
int myUpperCategory
Definition: entityTypeRange.h:92
int myUpperCountry
Definition: entityTypeRange.h:91
static const DtEntityTypeRange theAllEntityTypesRange
Definition: entityTypeRange.h:97
int upperDomain() const
Definition: entityTypeRange.h:59
This file contains typedefs for machine dependant types.
int upperCountry() const
Definition: entityTypeRange.h:60
DtEntityType is used to represent the type an entity object.
Definition: entityType.h:26
int upperKind() const
Definition: entityTypeRange.h:58
void setLowerCategory(int val)
Definition: entityTypeRange.h:53

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)