SIde-Channel Analysis toolKit (SICAK)
Software toolkit for side-channel analysis
blockprocess.h
Go to the documentation of this file.
1 /*
2 * SICAK - SIde-Channel Analysis toolKit
3 * Copyright (C) 2018 Petr Socha, FIT, CTU in Prague
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <https://www.gnu.org/licenses/>.
17 */
18 
29 #ifndef BLOCKPROCESS_H
30 #define BLOCKPROCESS_H
31 
32 #include <QString>
33 #include "types_power.hpp"
34 
42 class BlockProcess {
43 
44 public:
45 
46  virtual ~BlockProcess() {}
47 
49  virtual QString getPluginName() = 0;
51  virtual QString getPluginInfo() = 0;
52 
54  virtual void init(const char * param) = 0;
56  virtual void deInit() = 0;
57 
59  virtual void processBlockData(MatrixType<uint8_t> & data, const char * id) = 0;
60 
61 };
62 
63 #define BlockProcess_iid "cz.cvut.fit.Sicak.BlockProcessInterface/1.0"
64 
65 Q_DECLARE_INTERFACE(BlockProcess, BlockProcess_iid)
66 
67 
68 #endif /* BLOCKPROCESS_H */
virtual QString getPluginInfo()=0
Plugin info.
An abstract class, representing all the matrix-like data types.
Definition: types_basic.hpp:132
virtual QString getPluginName()=0
Plugin name.
virtual void processBlockData(MatrixType< uint8_t > &data, const char *id)=0
Process data and create/save related output files.
Block data processing QT plugin interface.
Definition: blockprocess.h:42
This header file contains class templates of power traces and power consumption containers.
virtual void deInit()=0
Deinitialize the plugin.
virtual void init(const char *param)=0
Initialize the plugin.