Skip to content
Snippets Groups Projects
Commit 06adc07c authored by julienpillis's avatar julienpillis
Browse files

ajout struct way

parent a5d3eb7d
No related branches found
No related tags found
3 merge requests!14Merge v2,!12Metro,!11Metro
......@@ -9,22 +9,20 @@ import (
type Metro struct {
frequency time.Duration
stopTime time.Duration
freeSpace int // nombre de cases disponibles dans le métro
gates []Coord //listes des portes du métro
freeSpace int // nombre de cases disponibles dans le métro
env *Environment
comChannel chan Request
way WayID
way *Way
}
func NewMetro(freq time.Duration, stopT time.Duration, freeS int, gates []Coord, env *Environment, wayNumber WayID) *Metro {
func NewMetro(freq time.Duration, stopT time.Duration, freeS int, env *Environment, way *Way) *Metro {
return &Metro{
frequency: freq,
stopTime: stopT,
freeSpace: freeS,
gates: gates,
env: env,
comChannel: make(chan Request),
way: wayNumber,
way: way,
}
}
......@@ -52,7 +50,7 @@ func (metro *Metro) pickUpUsers() {
t := time.Now()
for time.Now().Before(t.Add(metro.stopTime)) {
if metro.freeSpace > 0 {
for _, gate := range metro.gates {
for _, gate := range metro.way.gates {
go metro.pickUpGate(&gate)
}
}
......
......@@ -93,7 +93,8 @@ func NewSimulation(agentCount int, maxStep int, maxDuration time.Duration) (simu
//simu.env = *NewEnvironment([]Agent{}, playground, mapChan)
// Création du métro
simu.metro = *NewMetro(10*time.Second, 5*time.Second, 2, []Coord{{8, 5}}, &simu.env, 1)
simu.metro = *NewMetro(10*time.Second, 5*time.Second, 2, &simu.env, NewWay(1, []Coord{{8, 5}}))
// création des agents et des channels
for i := 0; i < agentCount; i++ {
......
......@@ -2,7 +2,13 @@ package simulation
type Way struct {
id WayID
gates []Coord //listes des portes du métro
gates []Coord //listes des portes associée à la voie
}
type WayID int
func NewWay(wayId WayID, gates []Coord) *Way {
return &Way{
id: wayId,
gates: gates}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment