swift
distributorfilter.cpp
1 // SPDX-FileCopyrightText: Copyright (C) 2018 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
5 
7 
8 using namespace swift::misc;
9 using namespace swift::misc::simulation;
10 
11 namespace swift::gui::models
12 {
13  CDistributorFilter::CDistributorFilter(const CSimulatorInfo &simulator) : m_simulator(simulator) { m_valid = true; }
14 
16  {
17  if (!this->isValid()) { return inDistributors; }
18  if (this->ignoreSimulator()) { return inDistributors; }
19 
20  CDistributorList outContainer;
21  for (const CDistributor &distributor : inDistributors)
22  {
23  if (!distributor.getSimulator().matchesAnyOrNone(m_simulator)) { continue; }
24  outContainer.push_back(distributor);
25  }
26  return outContainer;
27  }
28 
29  bool CDistributorFilter::ignoreSimulator() const
30  {
31  return (m_simulator.isNoSimulator() || m_simulator.isAllSimulators());
32  }
33 } // namespace swift::gui::models
virtual swift::misc::simulation::CDistributorList filter(const swift::misc::simulation::CDistributorList &inDistributors) const
Used container data.
void push_back(const T &value)
Appends an element at the end of the sequence.
Definition: sequence.h:305
Value object encapsulating information of software distributor.
Definition: distributor.h:33
Value object encapsulating a list of distributors.
Simple hardcoded info about the corresponding simulator.
Definition: simulatorinfo.h:41
bool isAllSimulators() const
Is all simulators?
bool isNoSimulator() const
No simulator?
Models to be used with views, mainly QTableView.
Free functions in swift::misc.