Developer documentation
Version 3.0.3-105-gd3941f44
syncmanager.h
Go to the documentation of this file.
1
/* Copyright (c) 2008-2022 the MRtrix3 contributors.
2
*
3
* This Source Code Form is subject to the terms of the Mozilla Public
4
* License, v. 2.0. If a copy of the MPL was not distributed with this
5
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
*
7
* Covered Software is provided under this License on an "as is"
8
* basis, without warranty of any kind, either expressed, implied, or
9
* statutory, including, without limitation, warranties that the
10
* Covered Software is free of defects, merchantable, fit for a
11
* particular purpose or non-infringing.
12
* See the Mozilla Public License v. 2.0 for more details.
13
*
14
* For more details, see http://www.mrtrix.org/.
15
*/
16
#ifndef __sync_syncmanager_h__
17
#define __sync_syncmanager_h__
18
19
#include "
gui/mrview/sync/enums.h
"
20
#include "
gui/mrview/sync/interprocesscommunicator.h
"
21
22
namespace
MR
23
{
24
namespace
GUI
25
{
26
namespace
MRView
27
{
28
namespace
Sync
29
{
39
class
SyncManager
:
public
QObject
40
{
MEMALIGN
(
SyncManager
)
41
Q_OBJECT
42
43
public
:
44
SyncManager
();
45
bool
GetInErrorState();
46
47
private
slots:
48
void
OnWindowFocusChanged();
49
void
OnIPSDataReceived(
vector
<std::shared_ptr<QByteArray>> all_messages);
50
51
private
:
52
InterprocessCommunicator
* ips;
//used to communicate with other processes
53
QByteArray ToQByteArray(Eigen::Vector3f data);
//conversion utility
54
Eigen::Vector3f FromQByteArray(QByteArray vec,
unsigned
int
offset
);
//conversion utility
55
bool
SendData(
DataKey
code, QByteArray data);
//sends data to other processes via the ips
56
};
57
58
}
59
}
60
}
61
}
62
#endif
MR::GUI::MRView::Sync::InterprocessCommunicator
Definition:
interprocesscommunicator.h:42
MR::GUI::MRView::Sync::SyncManager
Definition:
syncmanager.h:40
MR::vector
Definition:
types.h:253
enums.h
offset
index_type offset
Definition:
loop.h:33
interprocesscommunicator.h
MR::GUI::MRView::Sync::DataKey
DataKey
Definition:
enums.h:38
MR
Definition:
base.h:24
MEMALIGN
#define MEMALIGN(...)
Definition:
types.h:185
src
gui
mrview
sync
syncmanager.h
Generated on Mon Jul 4 2022 08:00:07 for MRtrix by
1.9.3