ONE - On-device Neural Engine
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
nest::Schedule Class Referencefinal

#include <Schedule.h>

Public Member Functions

 Schedule (const Module &)
 
const VarContextvar (void) const
 
const DomainContextdomain (void) const
 
const Blockblock (void) const
 
const Retret (void) const
 
Var at (const Level &) const
 
Level level (const Var &) const
 

Detailed Description

Definition at line 28 of file Schedule.h.

Constructor & Destructor Documentation

◆ Schedule()

nest::Schedule::Schedule ( const Module module)
explicit

Definition at line 25 of file Schedule.cpp.

25 : _module{module}
26{
27 // NOTE This implementation assumes that VarContext sequentially assigns VarID
28 for (uint32_t n = 0; n < _module.var().count(); ++n)
29 {
30 _level.emplace_back(VarID{n});
31 }
32
33 assert(_level.size() == _module.var().count());
34}
VarContext & var(void)
Definition Module.h:37
uint32_t count(void) const

References nest::VarContext::count(), and nest::Module::var().

Member Function Documentation

◆ at()

Var nest::Schedule::at ( const Level lv) const

Definition at line 36 of file Schedule.cpp.

36{ return Var{_level.at(lv.value())}; }

References nest::Level::value().

◆ block()

const Block & nest::Schedule::block ( void  ) const
inline

Definition at line 36 of file Schedule.h.

36{ return _module.block(); }
const Block & block(void) const
Definition Module.h:51

References nest::Module::block().

◆ domain()

const DomainContext & nest::Schedule::domain ( void  ) const
inline

Definition at line 35 of file Schedule.h.

35{ return _module.domain(); }
DomainContext & domain(void)
Definition Module.h:44

References nest::Module::domain().

◆ level()

Level nest::Schedule::level ( const Var var) const

Definition at line 38 of file Schedule.cpp.

39{
40 for (uint32_t lv = 0; lv < _level.size(); ++lv)
41 {
42 if (_level.at(lv) == var.id())
43 {
44 return Level{lv};
45 }
46 }
47
48 throw std::invalid_argument{"var"};
49}
const VarContext & var(void) const
Definition Schedule.h:34

References var().

◆ ret()

const Ret & nest::Schedule::ret ( void  ) const
inline

Definition at line 37 of file Schedule.h.

37{ return _module.ret(); }
const Ret & ret(void) const
Definition Module.cpp:37

References nest::Module::ret().

◆ var()

const VarContext & nest::Schedule::var ( void  ) const
inline

Definition at line 34 of file Schedule.h.

34{ return _module.var(); }

References nest::Module::var().

Referenced by level().


The documentation for this class was generated from the following files: