Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cla_prosim_driver
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Container Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fmg005
cla_prosim_driver
Commits
1fdc5324
Commit
1fdc5324
authored
May 02, 2018
by
fmg005
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Adding the realtime class..oops
parent
db9815b9
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
64 additions
and
0 deletions
+64
-0
Realtime.cpp
Realtime.cpp
+33
-0
include/Realtime.h
include/Realtime.h
+31
-0
No files found.
Realtime.cpp
0 → 100644
View file @
1fdc5324
#include "Realtime.h"
using
namespace
CLA
;
Realtime
::
Realtime
(
std
::
unique_ptr
<
PhysiologyEngine
>&
engine
,
CLA
::
LOGGER
*
logger
)
:
m_engine
(
engine
),
m_logger
(
logger
)
{
m_cycles
=
0
;
}
void
Realtime
::
AdvanceModelTime
(
double
time
)
{
m_cycles
=
static_cast
<
uint
>
(
time
*
N
);
for
(
int
i
=
0
;
i
<
m_cycles
;
i
++
)
{
m_engine
->
AdvanceModelTime
(
time
,
TimeUnit
::
s
);
}
}
void
Realtime
::
LoadConfig
(
const
char
*
file_path
)
{
try
{
m_cfg
.
readFile
(
file_path
);
// Read configration file
}
catch
(
const
FileIOException
&
fioex
)
{
m_logger
->
error
(
"I/O error while reading file."
);
}
catch
(
const
ParseException
&
pex
)
{
m_logger
->
error
(
"Error parsing configuration file."
);
}
N
=
m_cfg
.
lookup
(
"realtime.time_steps"
);
}
Realtime
::~
Realtime
()
{
}
include/Realtime.h
0 → 100644
View file @
1fdc5324
#ifndef REALTIME_H
#define REALTIME_H
#include <string>
#include <libconfig.h++>
#include "CLA_Logger.h"
#include "PulsePhysiologyEngine.h"
#include "engine/SEEngineTracker.h"
#include "scenario/SEDataRequest.h"
#include "properties/SEScalarTime.h"
using
namespace
libconfig
;
namespace
CLA
{
class
Realtime
{
private:
double
N
;
//system clock: 1s->600 sim time steps or 12 sim secs
std
::
unique_ptr
<
PhysiologyEngine
>&
m_engine
;
uint
m_cycles
;
Config
m_cfg
;
CLA
::
LOGGER
*
m_logger
;
public:
Realtime
(
std
::
unique_ptr
<
PhysiologyEngine
>&
,
CLA
::
LOGGER
*
);
~
Realtime
();
void
AdvanceModelTime
(
double
);
void
LoadConfig
(
const
char
*
);
};
}
#endif
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment