Mercurial > hg > orthanc-stone
comparison Framework/Volumes/ISliceableVolume.h @ 53:c2dc924f1a63 wasm
removing threading out of the framework
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 27 Apr 2017 16:57:49 +0200 |
parents | 28956ed68280 |
children | 81f73efd81a1 |
comparison
equal
deleted
inserted
replaced
52:37e504582af6 | 53:c2dc924f1a63 |
---|---|
19 **/ | 19 **/ |
20 | 20 |
21 | 21 |
22 #pragma once | 22 #pragma once |
23 | 23 |
24 #include "../Toolbox/IThreadSafety.h" | 24 #include <boost/noncopyable.hpp> |
25 | 25 |
26 namespace OrthancStone | 26 namespace OrthancStone |
27 { | 27 { |
28 class ISliceableVolume : public IThreadSafe | 28 class ISliceableVolume : public boost::noncopyable |
29 { | 29 { |
30 public: | 30 public: |
31 // Must be thread-safe | |
32 class IChangeObserver : public boost::noncopyable | 31 class IChangeObserver : public boost::noncopyable |
33 { | 32 { |
34 public: | 33 public: |
35 virtual ~IChangeObserver() | 34 virtual ~IChangeObserver() |
36 { | 35 { |
37 } | 36 } |
38 | 37 |
39 virtual void NotifyChange(const ISliceableVolume& volume) = 0; | 38 virtual void NotifyChange(const ISliceableVolume& volume) = 0; |
40 }; | 39 }; |
41 | 40 |
41 virtual ~ISliceableVolume() | |
42 { | |
43 } | |
44 | |
42 virtual void Register(IChangeObserver& observer) = 0; | 45 virtual void Register(IChangeObserver& observer) = 0; |
43 | 46 |
44 virtual void Unregister(IChangeObserver& observer) = 0; | 47 virtual void Unregister(IChangeObserver& observer) = 0; |
45 | 48 |
46 virtual void Start() = 0; | 49 virtual void Start() = 0; |