Package org.powertac.common
Class Timeslot
- java.lang.Object
-
- org.powertac.common.Timeslot
-
- All Implemented Interfaces:
Comparable<Object>
public class Timeslot extends Object implements Comparable<Object>
A timeslot instance describes an interval of time (slot) for which power may be traded in the wholesale market. The duration of a timeslot is given bycurrentCompetition.getTimeslotLength()
. Timeslots are uniquely identified by their serial numbers, which is the number of timeslots sincecurrentCompetition.getSimulationBaseTime()
.Timeslots are used (i) to correlate tradeable products (energy futures) and trades in the market with a future time interval where settlement (i.e. delivery / consumption) has to take place, (ii) to correlate meter readings with a duration in time, (iii) to allow tariffs to define different consumption / production prices for different times of a day. Timeslots are represented in server-broker communications by serial number.
This is an immutable type, so no state logging is needed. Creation events are logged by the repository.
- Author:
- Carsten Block, John Collins
-
-
Constructor Summary
Constructors Constructor Description Timeslot(int serial, org.joda.time.Instant start)
Constructor is intended to be called by repository.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(Object arg)
int
dayOfWeek()
Returns the day of week for the start of this timeslot, starting at Monday = 1.org.joda.time.Instant
getEndInstant()
long
getId()
int
getSerialNumber()
org.joda.time.Instant
getStartInstant()
org.joda.time.DateTime
getStartTime()
Returns the DateTime representation of the start time for this timeslotint
slotInDay()
Returns the timeslot index since the most recent midnight, starting at zero.String
toString()
-
-
-
Method Detail
-
getSerialNumber
public int getSerialNumber()
-
getId
public long getId()
-
getStartInstant
public org.joda.time.Instant getStartInstant()
-
getEndInstant
public org.joda.time.Instant getEndInstant()
-
getStartTime
public org.joda.time.DateTime getStartTime()
Returns the DateTime representation of the start time for this timeslot
-
slotInDay
public int slotInDay()
Returns the timeslot index since the most recent midnight, starting at zero. Note that this is hourOfDay if timeslots are one hour. Assumes tz = 0.
-
dayOfWeek
public int dayOfWeek()
Returns the day of week for the start of this timeslot, starting at Monday = 1.
-
compareTo
public int compareTo(Object arg)
- Specified by:
compareTo
in interfaceComparable<Object>
-
-