Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F56626476
system_evolution.hh
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Fri, Mar 29, 13:50
Size
1 KB
Mime Type
text/x-c++
Expires
Sun, Mar 31, 14:50 (2 d)
Engine
blob
Format
Raw Data
Handle
16650485
Attached To
R9484 sp4e-homework-lars-bertil
system_evolution.hh
View Options
#ifndef __SYSTEM_EVOLUTION__HH__
#define __SYSTEM_EVOLUTION__HH__
/* -------------------------------------------------------------------------- */
#include "compute.hh"
#include "system.hh"
/* -------------------------------------------------------------------------- */
//! Manager for system evolution
class SystemEvolution {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
//! Construct using existing system (takes ownership)
SystemEvolution(std::unique_ptr<System> system);
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
//! Evolve all time steps
void evolve();
//! Add compute to list of computes
void addCompute(const std::shared_ptr<Compute>& compute);
//! Get the system object
System& getSystem();
void setNSteps(UInt nsteps);
void setDumpFreq(UInt freq);
/* ------------------------------------------------------------------------ */
/* Members */
/* ------------------------------------------------------------------------ */
protected:
std::vector<std::shared_ptr<Compute>> computes;
std::unique_ptr<System> system;
UInt nsteps, freq;
};
/* -------------------------------------------------------------------------- */
#endif //__SYSTEM_EVOLUTION__HH__
Event Timeline
Log In to Comment