NorMIT-nav  2023.01.05-dev+develop.0da12
An IGT application
cxCoreServices.h
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 #ifndef CXCORESERVICES_H
12 #define CXCORESERVICES_H
13 
14 #include "cxResourceExport.h"
15 #include <boost/shared_ptr.hpp>
16 class ctkPluginContext;
17 
18 namespace cx
19 {
20 
21 typedef boost::shared_ptr<class PatientModelService> PatientModelServicePtr;
22 typedef boost::shared_ptr<class TrackingService> TrackingServicePtr;
23 typedef boost::shared_ptr<class VideoService> VideoServicePtr;
24 typedef boost::shared_ptr<class SpaceProvider> SpaceProviderPtr;
25 typedef boost::shared_ptr<class CoreServices> CoreServicesPtr;
26 typedef boost::shared_ptr<class SessionStorageService> SessionStorageServicePtr;
27 typedef boost::shared_ptr<class StateService> StateServicePtr;
28 typedef boost::shared_ptr<class FileManagerService> FileManagerServicePtr;
29 
38 class cxResource_EXPORT CoreServices
39 {
40 public:
41  static CoreServicesPtr create(ctkPluginContext* context);
42  CoreServices(ctkPluginContext* context);
43  static CoreServicesPtr getNullObjects();
44 
45  PatientModelServicePtr patient() { return mPatientModelService; }
46  TrackingServicePtr tracking() { return mTrackingService; }
47  VideoServicePtr video() { return mVideoService; }
48  SpaceProviderPtr spaceProvider() { return mSpaceProvider; }
49  SessionStorageServicePtr session() { return mSessionStorageService; }
50  StateServicePtr state() { return mStateService; }
51  FileManagerServicePtr file() {return mFileManagerService;}
52 
53 protected:
61 
62 protected:
63  CoreServices();
64 };
65 
66 }
67 
68 
69 #endif // CXCORESERVICES_H
cx::VideoServicePtr
boost::shared_ptr< class VideoService > VideoServicePtr
Definition: cxLogicManager.h:26
cx::CoreServices::mVideoService
VideoServicePtr mVideoService
Definition: cxCoreServices.h:56
cx
Namespace for all CustusX production code.
Definition: cx_dev_group_definitions.h:13
cx::CoreServices::mPatientModelService
PatientModelServicePtr mPatientModelService
Definition: cxCoreServices.h:54
cx::CoreServices::mFileManagerService
FileManagerServicePtr mFileManagerService
Definition: cxCoreServices.h:60
cx::FileManagerServicePtr
boost::shared_ptr< class FileManagerService > FileManagerServicePtr
Definition: cxLogicManager.h:31
cx::CoreServices::spaceProvider
SpaceProviderPtr spaceProvider()
Definition: cxCoreServices.h:48
cx::CoreServices::mTrackingService
TrackingServicePtr mTrackingService
Definition: cxCoreServices.h:55
cx::CoreServices::session
SessionStorageServicePtr session()
Definition: cxCoreServices.h:49
cx::SessionStorageServicePtr
boost::shared_ptr< class SessionStorageService > SessionStorageServicePtr
Definition: cxLogicManager.h:30
cx::TrackingServicePtr
boost::shared_ptr< class TrackingService > TrackingServicePtr
Definition: cxToolFilterWidget.h:27
cx::CoreServicesPtr
boost::shared_ptr< class CoreServices > CoreServicesPtr
Definition: cxCameraStyle.h:37
cx::PatientModelServicePtr
boost::shared_ptr< class PatientModelService > PatientModelServicePtr
Definition: cxLogicManager.h:25
cx::CoreServices::state
StateServicePtr state()
Definition: cxCoreServices.h:50
cx::CoreServices::file
FileManagerServicePtr file()
Definition: cxCoreServices.h:51
cx::CoreServices::mStateService
StateServicePtr mStateService
Definition: cxCoreServices.h:59
cx::CoreServices::mSessionStorageService
SessionStorageServicePtr mSessionStorageService
Definition: cxCoreServices.h:58
cx::CoreServices::tracking
TrackingServicePtr tracking()
Definition: cxCoreServices.h:46
cx::CoreServices::mSpaceProvider
SpaceProviderPtr mSpaceProvider
Definition: cxCoreServices.h:57
cx::CoreServices::patient
PatientModelServicePtr patient()
Definition: cxCoreServices.h:45
cx::CoreServices::video
VideoServicePtr video()
Definition: cxCoreServices.h:47
cx::CoreServices
Definition: cxCoreServices.h:38
cx::SpaceProviderPtr
boost::shared_ptr< class SpaceProvider > SpaceProviderPtr
Definition: cxLogicManager.h:23
cx::StateServicePtr
boost::shared_ptr< class StateService > StateServicePtr
Definition: cxLogicManager.h:27