ABC
 All Classes Files Functions Variables Pages
RegCDs.hpp
Go to the documentation of this file.
1 #ifndef __RegCDs__
2 #define __RegCDs__
3 
4 #include "Registro.hpp"
5 #include <string>
6 #include <stdio.h>
7 
8 using namespace std;
9 
10 
12 
20 class RegCDs : public Registro
21 {
22 
23 private:
24 
25  string Titulo;
26  string Artista;
28  string Canciones;
29 
30 
31 public:
32 
37  RegCDs(void)
38  {
39  }
40 
43  {
44  printf("\n\nTitulo: %s", Titulo.c_str());
45  printf("\nArtista: %s", Artista.c_str());
46  printf("\n\nNumero de caciones: %d", NumCanciones);
47  printf("\nCanciones: %s", Canciones.c_str());
48 
49  return 0; //Ok
50 
51  }
52 
54  int AdicionaRegistro(void)
55  {
56  // Cadena temporal
57  char cad[81];
58 
59  printf("\nTitulo: ");
60  ut.leerCadena(cad, 80);
61  Titulo.assign(cad);
62 
63  printf("\nArtista: ");
64  ut.leerCadena(cad, 80);
65  Artista.assign(cad);
66 
67  printf("\nNumero de caciones: ");
68  ut.leerNumero(NumCanciones);
69 
70  printf("\nCanciones: ");
71  ut.leerCadena(cad, 80);
72  Canciones.assign(cad);
73 
74  return 0; // Ok
75 
76  }
77 
80  {
81  // Cadena temporal
82  char cad[81];
83 
84  // Visualiza el nombre y permite su modificacion
85  printf("\nTitulo: %s", Titulo.c_str());
86  printf("\nNuevo Titulo: ");
87  ut.leerCadena(cad, 80);
88  Titulo.assign(cad);
89 
90  printf("\nArtista: %s", Artista.c_str());
91  printf("\nNuevo Artista: ");
92  ut.leerCadena(cad, 80);
93  Artista.assign(cad);
94 
95  printf("\nNumero de caciones: %d", NumCanciones);
96  printf("\nNuevo Numero de caciones: ");
97  ut.leerNumero(NumCanciones);
98 
99  printf("\nCanciones: %s", Canciones.c_str());
100  printf("\nNuevas Canciones: ");
101  ut.leerCadena(cad, 80);
102  Canciones.assign(cad);
103 
104  return 0; // Ok
105  }
106 
107  int LeerRegistro(FILE *file)
108  {
109  char cad[100];
110 
111  cad[0] = 0;
112  fread(cad,1,80,file);
113  Titulo.assign(cad);
114 
115  fread(cad,1,80,file);
116  Artista.assign(cad);
117 
118  fread(&NumCanciones,sizeof(int), 1,file);
119 
120  fread(cad,1,80,file);
121  Canciones.assign(cad);
122 
123  return 0; // Ok
124  }
125 
126  int GrabarRegistro(FILE *file)
127  {
128  fwrite(Titulo.c_str(),1,80,file);
129  fwrite(Artista.c_str(),1,80,file);
130  fwrite(&NumCanciones,sizeof(int), 1,file);
131  fwrite(Canciones.c_str(),1,80,file);
132 
133  return 0; // Ok
134  }
135 
136 
137 
138 };
139 
140 
141 
142 #endif
string Titulo
Definition: RegCDs.hpp:25
int NumCanciones
Definition: RegCDs.hpp:27
int VisualizaRegistro(void)
Visualiza el contenido del registro.
Definition: RegCDs.hpp:42
Clase Base para manipular registros.
Definition: Registro.hpp:17
Clase para manipular registros de Cds.
Definition: RegCDs.hpp:20
int LeerRegistro(FILE *file)
Definition: RegCDs.hpp:107
int AdicionaRegistro(void)
Modifica el contenido del registro.
Definition: RegCDs.hpp:54
int ModificarRegistro(void)
Modifica el contenido del registro.
Definition: RegCDs.hpp:79
RegCDs(void)
Definition: RegCDs.hpp:37
int GrabarRegistro(FILE *file)
Definition: RegCDs.hpp:126
string Canciones
Definition: RegCDs.hpp:28
string Artista
Definition: RegCDs.hpp:26