# Contants
JARFILE	= ../lib/farmants.jar

# Compile by default
this: classes

# Master makefile
include ../Makefile

# Farm convenience rules
runagent:
	$(RUNJAVA) -Xruncapjprof \
	  farm.ants.agent.AntsMetAgent $(HOST) MA0

rundriver:
	$(RUNJAVA) farm.ants.plugins.FarmDriver $(HOST)

rundisplay:
	$(RUNJAVA) farm.ants.plugins.FarmDisplay $(HOST)

runanalysis:
	$(RUNJAVA) farm.ants.plugins.AntsAllocationAnalysis $(HOST)

rungraph:
	$(RUNJAVA) farm.generic.plugins.gui.GraphGui $(HOST) -track "TotalMessagesSent,TotalMessagesReceived,TotalUtility,PossibleUtility,PossibleTracks,TotalTracks,PossibleConflicts,TotalConflicts"

runlog:
	$(RUNJAVA) farm.generic.plugins.PropertyLog -host $(HOST) -log "TotalUtility,RealOptimalUtility,AgentOptimalUtility,AgentRandomUtility" -o ../ants/utility.log

runoptimal:
	$(RUNJAVA) farm.ants.plugins.AntsOptimalAllocation $(HOST)


%.sav: FORCE
	$(RUNJAVA) farm.simulator.FarmSimulator -m 3 -delay 100 -r $@  &
	sleep 2
	$(RUNJAVA) farm.ants.plugins.AntsAllocationAnalysis $(HOST) &
	$(RUNJAVA) farm.generic.plugins.PropertyLog -host $(HOST) -log "TotalUtility,RealOptimalUtility,AgentOptimalUtility,AgentRandomUtility" -o ../ants/utility.log &
	$(RUNJAVA) farm.generic.plugins.drivers.TimeDriver -host $(HOST) -gui
	$(RUNJAVA) farm.ants.plugins.FarmDisplay $(HOST)
