-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcrimen.h
145 lines (109 loc) · 3.09 KB
/
crimen.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
/*
* meteorito.h
*
* Copyright (C) Juan F. Huete
*/
#ifndef __CRIMEN_H
#define __CRIMEN_H
#include <string>
#include <iostream>
#include "fecha.h"
//! Clase crimen, asociada a la definición de un crimen
/*! crimen::crimen, .....
* Descripción contiene toda la información asociada a un crimen.
@todo Implementa esta clase, junto con su documentación asociada
*/
class crimen {
public:
/**
* @brief Constructor sin parametros
* */
crimen();
/**
* @brief Construtor a partir dae un objeto crimen
* @param crimen Objeto el cual que copiara
*/
crimen(const crimen& x);
/**
* @brief Asigna un ID
* @param id Valor a asignar
*/
void setID(long int & id);
/**
* @brief Asigna un numero de caso
* @param s Numero de caso a asignar
*/
void setCaseNumber(const string & s);
/**
* @brief Asigna una fecha
* @param d Fecha a asignar
*/
void setDate(const fecha & d);
/**
* @brief Asigna un código del tipo de delito según Illinois Uniform Crime Reporting, IUCR
* @param s Código a asignar
*/
void setIucr(const string & s);
void setPrimaryType(const string & s);
void setDescription(const string & s);
void setLocationDescription(const string & s);
/**
* @brief Asigna si esta arrestado // #fixme
* @param a Valor a asignar
*/
void setArrest(bool a);
/**
* @brief Asigna si es domestico
* @param d Valor a asignar
*/
void setDomestic(bool d);
void setLatitude(double & lat);
void setLongitude(double & lon);
/**
* @brief Obtiene el ID de un caso
* @return ID del caso
*/
long int getID( ) const;
/**
* @brief Obtiene el numero de Caso
* @return Numero de caso
*/
string getCaseNumber( ) const;
/**
* @brief Obtiene la fecha
* @return Fecha
*/
fecha getDate( ) const;
string getIucr( ) const;
string getPrimaryType( ) const;
string getDescription( ) const;
string getLocationDescription( ) const;
bool getArrest( ) const;
bool getDomestic( ) const;
double getLatitude( ) const;
double getLongitude( ) const;
/**
* @brief Operador de asignacion
* @param
*/
crimen & operator=(const crimen & c);
bool operator==(const crimen & x) const;
bool operator<(const crimen & x) const;
private:
friend ostream& operator<< ( ostream& , const crimen& );
//Atributos
long int ID; // Identificador del delito
string casenumber; // Código del caso
fecha date; // Fecha en formato mm/dd/aaaa hh:mm:ss AM/PM
string iucr; // Código del tipo de delito según Illinois Uniform Crime Reporting, IUCR
string primarytype; // Tipo de delito
string description; // Descripción más detallada
string location_descrip; // Descripción del tipo de localización
bool arrest; // Si hay arrestos o no
bool domestic; // Si es un crimen domestico o no
double latitude; // Coordenada de latitud
double longitude; // Coordenada de longitud
};
ostream& operator<< ( ostream& , const crimen& );
#include "crimen.hxx"
#endif