simdart 0.1.0-rc.1 copy "simdart: ^0.1.0-rc.1" to clipboard
simdart: ^0.1.0-rc.1 copied to clipboard

A discrete event simulation library for Dart, designed for modeling and analyzing processes and systems.

example/example.dart

import 'package:simdart/simdart.dart';

void main() async {
  final SimDart sim = SimDart();
  sim.processAt(event1, 0, name: '1');
  sim.processAt(event2, 10, name: '2');
  sim.processAt(event3, 0, name: '3');

  await for (SimulationResult result in sim.runAsStream()) {
    print('[${result.operation}] event: ${result.name} time: ${result.time}');
  }

  // or just:
  // await sim.run();
  print('Done!');
}

void event1(Event event) async {
  event.sim.processAt(event1b, 15, name: '1b');
  await event.wait(11);
  await event.wait(11);
}

void event1b(Event event) {
  event.sim.processAfter((event) => event1c(event, 100), 5, name: '1c');
}

void event1c(Event event, int parameter) {
  print('Parameter: $parameter received at event ${event.name}');
}

void event2(Event event) {}

void event3(Event event) {}
1
likes
0
points
31
downloads

Publisher

verified publishercaduandrade.net

Weekly Downloads

A discrete event simulation library for Dart, designed for modeling and analyzing processes and systems.

Repository (GitHub)
View/report issues

Topics

#system-analysis #event-driven #simulation #discrete-event-simulation

License

unknown (license)

Dependencies

meta

More

Packages that depend on simdart