~ubuntu-branches/ubuntu/wily/ginkgocadx/wily-proposed

« back to all changes in this revision

Viewing changes to src/cadxcore/api/icontroladorhistorial.h

  • Committer: Bazaar Package Importer
  • Author(s): Andreas Tille
  • Date: 2011-05-02 08:09:26 UTC
  • Revision ID: james.westby@ubuntu.com-20110502080926-bql5wep49c7hg91t
Tags: upstream-2.4.1.1
ImportĀ upstreamĀ versionĀ 2.4.1.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 *  
 
3
 *  $Id: icontroladorhistorial.h 3648 2011-04-04 11:56:18Z tovar $
 
4
 *  Ginkgo CADx Project
 
5
 *
 
6
 *  Copyright 2008-10 MetaEmotion S.L. All rights reserved.
 
7
 *  http://ginkgo-cadx.com
 
8
 *
 
9
 *  This file is licensed under LGPL v3 license.
 
10
 *  See License.txt for details
 
11
 *
 
12
 */
 
13
#pragma once
 
14
#include <string>
 
15
#include <vector>
 
16
#include <list>
 
17
 
 
18
namespace GNC {
 
19
        namespace GCS {
 
20
                class IControladorHistorial {
 
21
                public:
 
22
                        typedef struct ModeloPaciente
 
23
                        {
 
24
                                std::string m_idPaciente;
 
25
                                std::string m_nombrePaciente;
 
26
                                std::string m_fechaNacimiento;
 
27
                                char m_sexo;
 
28
                        } ModeloPaciente;
 
29
 
 
30
                        typedef struct ModeloEstudio
 
31
                        {
 
32
                                std::string m_uidEstudio;
 
33
                                std::string m_fechaEstudio;
 
34
                                std::string m_horaEstudio;
 
35
                                std::string m_descripcionEstudio;
 
36
                                std::string m_uidImportador;
 
37
                                std::string m_nombreMedico;
 
38
                        }ModeloEstudio;
 
39
 
 
40
                        typedef struct ModeloDCM
 
41
                        {
 
42
                        public:
 
43
                                std::string m_pathRelativo;
 
44
                                std::string m_idPaciente;
 
45
                                std::string m_nombrePaciente;
 
46
                                std::string m_uidEstudio;
 
47
                                std::string m_uidSerie;
 
48
                                std::string m_fechaEstudio;
 
49
                                std::string m_horaEstudio;
 
50
                                std::string m_fechaSerie;
 
51
                                std::string m_horaSerie;
 
52
                                std::string m_fechaImagen;
 
53
                                std::string m_horaImagen;
 
54
                                std::string m_fechaNacimiento;
 
55
                                std::string m_descripcionSerie;
 
56
                                std::string m_descripcionImagen;
 
57
                                std::string m_descripcionEstudio;
 
58
                                std::string m_modalidad;
 
59
                                std::string m_uidImportador;
 
60
                                std::string m_uidImagen;
 
61
                                std::string m_nombreMedico;
 
62
                                char    m_orientacion;
 
63
                                double          m_patientPosition[3];
 
64
                                std::string m_contentDate;
 
65
                                std::string m_contentTime;
 
66
                                std::string m_width;
 
67
                                std::string m_height;
 
68
                                double m_sliceLocation;
 
69
                                double m_instanceNumber;
 
70
                                std::list<std::string> m_listaReferencias;
 
71
                                std::string m_uidTransferSyntax;
 
72
                                char m_sexo;
 
73
                        }ModeloDCM;
 
74
 
 
75
                        typedef struct ModeloSerie
 
76
                        {
 
77
                        public:
 
78
                                ModeloSerie(){}
 
79
                                ModeloSerie(const ModeloDCM& otro) {
 
80
                                        m_idPaciente = otro.m_idPaciente;
 
81
                                        m_nombrePaciente = otro.m_nombrePaciente;;
 
82
                                        m_uidEstudio = otro.m_uidEstudio;
 
83
                                        m_uidSerie = otro.m_uidSerie;
 
84
                                        m_fechaEstudio = otro.m_fechaEstudio;
 
85
                                        m_horaEstudio = otro.m_horaEstudio;
 
86
                                        m_fechaSerie = otro.m_fechaSerie;
 
87
                                        m_horaSerie = otro.m_horaSerie;
 
88
                                        m_fechaNacimiento = otro.m_fechaNacimiento;
 
89
                                        m_descripcionSerie = otro.m_descripcionSerie;
 
90
                                        m_descripcionEstudio = otro.m_descripcionEstudio;
 
91
                                        m_modalidad = otro.m_modalidad;
 
92
                                        m_uidImportador = otro.m_uidImportador;
 
93
                                        m_numeroSlices = 1;
 
94
                                        m_sexo = otro.m_sexo;
 
95
                                        m_uidTransferSyntax = otro.m_uidTransferSyntax;
 
96
                                }
 
97
 
 
98
                                std::string m_idPaciente;
 
99
                                std::string m_nombrePaciente;
 
100
                                std::string m_uidEstudio;
 
101
                                std::string m_uidSerie;
 
102
                                std::string m_fechaEstudio;
 
103
                                std::string m_horaEstudio;
 
104
                                std::string m_fechaSerie;
 
105
                                std::string m_horaSerie;
 
106
                                std::string m_fechaNacimiento;
 
107
                                std::string m_descripcionSerie;
 
108
                                std::string m_descripcionEstudio;
 
109
                                std::string m_modalidad;
 
110
                                std::string m_uidImportador;
 
111
                                std::string m_uidTransferSyntax;
 
112
                                int m_numeroSlices;
 
113
                                char m_sexo;
 
114
                        }ModeloSerie;                   
 
115
 
 
116
                        typedef std::list<ModeloSerie> ListaModelosSeries;
 
117
                        typedef std::list<ModeloEstudio> ListaModelosEstudios;
 
118
                        typedef std::list<ModeloDCM> ListaModelosDCM;
 
119
                        typedef std::list<ModeloPaciente> ListaModelosPaciente;
 
120
 
 
121
                        typedef std::list<std::string> ListaPaths;
 
122
                        typedef std::list<std::string> ListaStrings;
 
123
 
 
124
                        typedef std::vector<std::string> VectorPaths;
 
125
 
 
126
                        /* Constructor */
 
127
                         IControladorHistorial()
 
128
                        {
 
129
                        }
 
130
 
 
131
                        /* Destructor */
 
132
                        virtual ~IControladorHistorial()
 
133
                        {
 
134
                        }
 
135
 
 
136
                        virtual ListaModelosEstudios GetEstudiosDiagnosticosSeriePath(const std::string& pathFichero, const std::string& uidImportador = "") = 0;
 
137
                        virtual ListaModelosEstudios GetEstudiosDiagnosticosEstudioPath(const std::string& pathFichero, const std::string& uidImportador = "") = 0;
 
138
                        virtual ModeloDCM GetDiagnostico(const std::string& pathFicheroAbsoluto,const std::string& uidEstudio, const std::string& uidImportador="") = 0;
 
139
                        virtual ModeloDCM GetDiagnosticoSerie(const std::string& uidSerie,const std::string& uidEstudio, const std::string& uidImportador="") = 0;
 
140
                        virtual ModeloDCM GetDiagnosticoClave(const std::string& uidEstudio, const std::string& uidImportador) = 0;
 
141
                        virtual std::string GetSopInstanceUID(const std::string& pathAbsoluto) = 0;
 
142
                        virtual std::string GetPathAbsoluto(const std::string& sopInstanceUID) = 0;
 
143
                        virtual VectorPaths GetPathsSerieOrdenados(const std::string& uidSerie) = 0;
 
144
                protected:
 
145
 
 
146
                };
 
147
        }
 
148
}