swift
simulatorplugininfolist.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (C) 2013 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
5 
6 #ifndef SWIFT_MISC_SIMULATION_SIMULATORPLUGININFOLIST_H
7 #define SWIFT_MISC_SIMULATION_SIMULATORPLUGININFOLIST_H
8 
9 #include <QMetaType>
10 #include <QString>
11 #include <QStringList>
12 
13 #include "misc/collection.h"
14 #include "misc/sequence.h"
17 #include "misc/swiftmiscexport.h"
18 
19 SWIFT_DECLARE_SEQUENCE_MIXINS(swift::misc::simulation, CSimulatorPluginInfo, CSimulatorPluginInfoList)
20 
21 namespace swift::misc::simulation
22 {
23  class CSimulatorPluginInfo;
24 
27  public swift::misc::CSequence<CSimulatorPluginInfo>,
28  public swift::misc::mixin::MetaType<CSimulatorPluginInfoList>
29  {
30  public:
33 
36 
39 
41  bool supportsSimulator(const QString &simulator) const;
42 
44  QStringList toStringList(bool i18n = false) const;
45 
47  CSimulatorPluginInfo findByIdentifier(const QString &identifier) const;
48 
50  CSimulatorPluginInfo findBySimulator(const swift::misc::simulation::CSimulatorInfo &simulator) const;
51  };
52 } // namespace swift::misc::simulation
53 
56 
57 #endif // SWIFT_MISC_SIMULATION_SIMULATORPLUGININFOLIST_H
Generic ordered container with value semantics.
Definition: collection.h:107
Generic sequential container with value semantics.
Definition: sequence.h:86
CSequence()=default
Default constructor.
CRTP class template from which a derived class can inherit common methods dealing with the metatype o...
Definition: mixinmetatype.h:29
Simple hardcoded info about the corresponding simulator.
Definition: simulatorinfo.h:41
Value object encapsulating a list of SimulatorInfo objects.
CSimulatorPluginInfoList(const CSequence< CSimulatorPluginInfo > &other)
Construct from a base class object.
#define SWIFT_MISC_DECLARE_USING_MIXIN_METATYPE(DERIVED)
When a derived class and a base class both inherit from mixin::MetaType, the derived class uses this ...
#define SWIFT_DECLARE_SEQUENCE_MIXINS(Namespace, T, List)
Explicit template declaration of mixins for a CSequence subclass to be placed near the top of the hea...
Definition: sequence.h:62
#define SWIFT_MISC_EXPORT
Export a class or function from the library.