11class DNACalibDNAReader;
48 template<
class ... Commands>
49 void add(Commands... commands) {
50 static_assert(
sizeof...(commands) > 0,
"At least one command must be passed.");
51 Command* commandList[] = {commands ...};
52 for (
auto cmd : commandList) {
71 template<
class ... Commands>
73 static_assert(
sizeof...(commands) > 0,
"At least one command must be passed.");
74 Command* commandList[] = {commands ...};
75 for (
auto cmd : commandList) {
CommandSequence is used to run a sequence of commands on the same DNA.
Definition: CommandSequence.h:20
DNACAPI ~CommandSequence()
DNACAPI CommandSequence(CommandSequence &&)
void add(Commands... commands)
Definition: CommandSequence.h:49
CommandSequence(const CommandSequence &)=delete
void remove(Commands... commands)
Definition: CommandSequence.h:72
DNACAPI CommandSequence(MemoryResource *memRes=nullptr)
Definition: src/dnacalib/commands/CommandSequence.cpp:49
DNACAPI void run(DNACalibDNAReader *output) override
Definition: src/dnacalib/commands/CommandSequence.cpp:57
DNACAPI void add(Command *command)
Method for adding a command to a sequence of commands to run.
Definition: src/dnacalib/commands/CommandSequence.cpp:61
CommandSequence & operator=(const CommandSequence &)=delete
DNACAPI CommandSequence & operator=(CommandSequence &&)
DNACAPI void remove(Command *command)
Method for removing a command from the sequence of commands to run.
Definition: src/dnacalib/commands/CommandSequence.cpp:71
DNACAPI bool contains(Command *command) const
Method for checking if the provided command is part of the command sequence.
Definition: src/dnacalib/commands/CommandSequence.cpp:81
DNACAPI std::size_t size() const
Number of commands in command sequence.
Definition: src/dnacalib/commands/CommandSequence.cpp:85
ScopedPtr< Impl > pImpl
Definition: CommandSequence.h:94
Command is an abstract class whose implementations are expected to modify the DNA provided in the run...
Definition: Command.h:15
Definition: DNACalibDNAReader.h:12
MemoryResource is an abstract class that allows the implementation of polymorphic allocators.
Definition: MemoryResource.h:17
Takes ownership over the given pointer and handles it's lifetime.
Definition: ScopedPtr.h:116
A view over a continuous sequence of objects.
Definition: ArrayView.h:55
#define DNACAPI
Definition: dnacalib/Defs.h:26