Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
G
Gruppe44-PROG1003-2022
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Andreas Blakli
Gruppe44-PROG1003-2022
Commits
ce690516
Commit
ce690516
authored
3 years ago
by
Andreas Blakli
Browse files
Options
Downloads
Patches
Plain Diff
Fjernet ubrukt kode og la til doxygen kommentarer på alle funksjonene i stoppesteder.cpp.
parent
92e01a54
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
stoppesteder.cpp
+82
-28
82 additions, 28 deletions
stoppesteder.cpp
with
82 additions
and
28 deletions
stoppesteder.cpp
+
82
−
28
View file @
ce690516
...
...
@@ -2,15 +2,28 @@
using
namespace
std
;
/**
* Constructor for Stoppested, lager ett nytt Stoppestd object.
*
*/
Stoppesteder
::
Stoppesteder
()
{
lesFraFil
();
}
/**
* Destructor for Stoppested objekt.
*
*/
Stoppesteder
::~
Stoppesteder
()
{
skrivTilFil
();
ryddOppMinne
();
}
/**
* Skriver ut alle stoppesteder til terminal.
*
* @see Stoppested::hentNavn().
*/
void
Stoppesteder
::
skrivData
()
{
int
i
=
1
;
for
(
const
auto
&
val
:
alleStoppesteder
)
{
...
...
@@ -19,6 +32,14 @@ void Stoppesteder::skrivData() {
}
}
/**
* Skriver ut data om ett stoppested basert på bruker input
* med info om nabostoppene e.g. navn og tid.
*
* @see HjelpeFunksjoner::rensStreng().
* @see hentEksisterende().
* @see Stoppested::skrivDataMedNaboer().
*/
void
Stoppesteder
::
skrivSpesifikkData
()
{
cout
<<
"
\n
Skriv inn navnet på stoppestedet: "
;
string
inn
;
...
...
@@ -31,36 +52,35 @@ void Stoppesteder::skrivSpesifikkData() {
cout
<<
"
\n
Ikke entydig eller finnes ikke!"
<<
'\n'
;
}
/**
* Legger til ett nytt stoppested hvis det ikke eksisterer.
*
* @param navn - Navnet på stoppestedet.
* @param leggTilTid - Skal tid legges til ja/nei.
*
* @see hentEksisterende().
*/
void
Stoppesteder
::
ny
(
const
string
&
navn
,
const
bool
&
leggTilTid
)
{
// bool eksisterer = false;
/*vector<Stoppested *>::iterator it =
find_if(alleStoppesteder.begin(), alleStoppesteder.end(),
[](Stoppested *s, const string navn) { return s->hentNavn() == navn; });*/
/*for (const auto & val : alleStoppesteder) {
if (val->hentNavn() == navn)
eksisterer = true;
}*/
if
(
hentEksisterende
(
navn
)
!=
nullptr
)
cout
<<
'\n'
<<
"Error: "
<<
navn
<<
" eksisterer allerede!"
<<
'\n'
;
/* else if (leggTilTid) {
// tid mellom forrige busstopp
// tid til neste bussstopp
// for (int i = alleStoppesteder.size(); i < )
alleStoppesteder.push_back(new Stoppested(alleStoppesteder.size(), navn, leggTilTid));
}*/
else
{
alleStoppesteder
.
push_back
(
new
Stoppested
(
navn
,
leggTilTid
));
//skrivTilFil();
}
}
}
/**
* Returnerer pekeren til stoppestedet hvis det eksiterer.
*
* @param navn - Navnet på stoppestedet.
* @return Stoppested* - Peker til stoppested, nullptr hvis det ikke finnes.
*
* @see HjelpeFunksjoner::gjorOmTilStorBokstav().
* @see Stoppested::hentNavn().
*/
Stoppested
*
Stoppesteder
::
hentEksisterende
(
const
string
&
navn
)
{
bool
lik
;
int
antallLike
=
0
;
...
...
@@ -87,20 +107,35 @@ Stoppested* Stoppesteder::hentEksisterende(const string& navn) {
if
(
antallLike
==
1
)
return
tmpStoppested
;
return
nullptr
;
}
/**
* Returnerer pekeren til stoppestedet hvis det eksiterer.
*
* @param index - Indeksen til stoppestedet i vectoren alleStoppesteder.
* @return Stoppested* - Peker til stoppested, nullptr hvis det ikke finnes.
*/
Stoppested
*
Stoppesteder
::
hentEksisterende
(
const
int
&
index
)
{
if
(
alleStoppesteder
.
size
()
>=
index
)
return
alleStoppesteder
[
index
];
return
nullptr
;
}
/**
* Skriver ut meny valgene til terminal.
*
*/
void
Stoppesteder
::
skrivMeny
()
{
/*cout << "\nN - Lag nytt stoppested" << '\n'
<< "A - Skriv alle stoppesteder" << '\n'
<< "E - Skriv alt om ett stoppested" << '\n';*/
cout
<<
"
\n
N - Nytt stoppested"
<<
'\n'
<<
"A - Skriv alle stoppesteder"
<<
'\n'
<<
"E - Skriv alt om ett stoppested"
<<
'\n'
<<
"Q - Tilbake"
;
}
/**
* Returnerer indeksen til stoppestedet fra alleStoppesteder vectoren.
*
* @param stoppested - Peker til stoppestedet.
* @return int - Indeksen til stoppestedet, -1 hvis det ikke finnes.
*/
int
Stoppesteder
::
hentIndex
(
Stoppested
*
stoppested
)
{
int
i
=
0
;
for
(
const
auto
&
val
:
alleStoppesteder
)
{
...
...
@@ -110,12 +145,18 @@ int Stoppesteder::hentIndex(Stoppested* stoppested) {
return
-
1
;
}
/**
* Meny, styrer hvilke funksjoner som skal brukes
* basert på bruker valget i parameteren.
*
* @param valg - Bruker valget.
*
* @see HjelpeFunksjoner::rensStreng().
* @see skrivData().
* @see skrivSpesifikkData().
*/
void
Stoppesteder
::
meny
(
const
char
&
valg
)
{
// char valg;
string
navn
;
// do {
// skrivMeny();
// valg = lesChar("");
switch
(
valg
)
{
case
'N'
:
{
cout
<<
"
\n
Skriv inn navn på stoppested:"
;
...
...
@@ -123,7 +164,6 @@ void Stoppesteder::meny(const char& valg) {
navn
=
hjelp
.
rensStreng
(
navn
);
if
(
navn
!=
""
)
{
ny
(
navn
,
false
);
}
break
;
}
...
...
@@ -139,9 +179,13 @@ void Stoppesteder::meny(const char& valg) {
cout
<<
"
\n
Ugyldig valg!"
<<
'\n'
;
break
;
}
//} while (valg != 'Q');
}
/**
* Sletter de lagrede stoppested pekerne fra alleStoppesteder
* vectoren.
*
*/
void
Stoppesteder
::
ryddOppMinne
()
{
for
(
int
i
=
0
;
i
<
alleStoppesteder
.
size
();
i
++
)
{
delete
alleStoppesteder
[
i
];
...
...
@@ -149,6 +193,11 @@ void Stoppesteder::ryddOppMinne() {
alleStoppesteder
.
clear
();
}
/**
* Leser stoppesteder fra fil.
*
* @see Stoppested::lesFraFil().
*/
void
Stoppesteder
::
lesFraFil
()
{
int
antallStoppesteder
,
i
;
antallStoppesteder
=
i
=
0
;
...
...
@@ -167,6 +216,11 @@ void Stoppesteder::lesFraFil() {
<<
'\n'
;
}
/**
* Skriver alle stoppestedene til fil.
*
* @see Stoppested::skrivTilFil().
*/
void
Stoppesteder
::
skrivTilFil
()
{
ofstream
fil
(
STI_STOPPESTEDER
);
fil
<<
alleStoppesteder
.
size
()
<<
'\n'
;
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment