VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ruleBasedBalancerObject.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
9 #include <vlutil/vlFilename.h>
10 #include <vlpi/entityType.h>
11 #include <vlpi/simulationAddress.h>
12 
13 #include <string>
14 #include <set>
15 #include <vector>
16 
17 class DtVrfFileParser;
18 class DtUUID;
20 
33 {
34 public:
35 
39 
41  virtual ~DtRuleBasedBalancerObject();
42 
45 
46  virtual bool load(const DtFilename&);
47  virtual bool save();
48  virtual bool save(const DtFilename&);
49 
50  virtual void setTitle(const std::string&);
51  const std::string& title() const
52  {
53  return myTitle;
54  }
55 
56  virtual void clear();
57 
58  virtual void addMatch(const DtEntityType&, const DtSimulationAddress&);
59  virtual void addMatch(const std::string&, const DtSimulationAddress&);
60  virtual bool removeMatch(const DtEntityType&);
61  virtual bool removeMatch(const std::string&);
62  virtual bool removeMatch(int row);
63  virtual void editRow(int row, const DtEntityType& t, const DtSimulationAddress& addr);
64  virtual void editRow(int row, const std::string& t, const DtSimulationAddress& addr);
65 
68  virtual bool match(const DtUUID& uuid, const DtVrfFileParser* parser, DtSimulationAddress& addr) const;
69  virtual bool match(const DtRwVariableBindings&, DtSimulationAddress& addr) const;
70 
71  virtual void setFallbackAddress(const DtSimulationAddress&);
72 
73  virtual std::set<DtSimulationAddress> simulationAddresses() const;
74 
75  const DtFilename& filename() const
76  {
77  return myFilename;
78  }
79 
80  const DtSimulationAddress& fallbackAddress() const
81  {
82  return myFallbackAddress;
83  }
84 
85  const std::vector<std::pair<std::string, DtSimulationAddress> >& matchingRules() const
86  {
87  return myMatchingRules;
88  }
89 
90 protected:
91  std::vector<std::pair<std::string, DtSimulationAddress> > myMatchingRules;
92  std::string myTitle;
93  DtFilename myFilename;
94  DtSimulationAddress myFallbackAddress;
95 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
std::vector< std::pair< std::string, DtSimulationAddress > > myMatchingRules
Definition: ruleBasedBalancerObject.h:91
DtSimulationAddress myFallbackAddress
Definition: ruleBasedBalancerObject.h:94
ReaderWriter object that maintains a list of reader-writer variable bindings. It keeps a list of name...
Definition: rwVariableBindings.h:27
This class will maintain information about an entity type load balancing which will map an entity typ...
Definition: ruleBasedBalancerObject.h:32
std::string myTitle
Definition: ruleBasedBalancerObject.h:92
DtFilename myFilename
Definition: ruleBasedBalancerObject.h:93
const std::string & title() const
Definition: ruleBasedBalancerObject.h:51
const DtFilename & filename() const
Definition: ruleBasedBalancerObject.h:75
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
Definition: vrfFileParser.h:30
const std::vector< std::pair< std::string, DtSimulationAddress > > & matchingRules() const
Definition: ruleBasedBalancerObject.h:85
const DtSimulationAddress & fallbackAddress() const
Definition: ruleBasedBalancerObject.h:80

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)