edu.ntnu.ecosim.agents.serviceproviders.innovation
Class Innovation

java.lang.Object
  extended by edu.ntnu.ecosim.agents.serviceproviders.innovation.Innovation
Direct Known Subclasses:
NetEffInnovation, ValueInnovation

public abstract class Innovation
extends java.lang.Object

This class represents the innovations of our economy.

Author:
Martin

Field Summary
static int NETEFFADDING
          A static variable for services with network effects
protected  double neteffect
          The network effect of the innovation.
protected  double value
          The direct value of the innovation
static int VALUEADDING
          A static variable for "value adding" services
 
Constructor Summary
Innovation()
          The basic constructor of an innovation.
 
Method Summary
 double getNetEffect()
          Method to be used if the innovation produces network effects
abstract  int getType()
          Method to get the type of innovation this is
 java.lang.String getUniqueID()
          Method to get the unique ID of the innovation
 double getValueAdd()
          Method to be used if the innovation produces direct value
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VALUEADDING

public static final int VALUEADDING
A static variable for "value adding" services

See Also:
Constant Field Values

NETEFFADDING

public static final int NETEFFADDING
A static variable for services with network effects

See Also:
Constant Field Values

neteffect

protected double neteffect
The network effect of the innovation.


value

protected double value
The direct value of the innovation

Constructor Detail

Innovation

public Innovation()
The basic constructor of an innovation.

Method Detail

getNetEffect

public double getNetEffect()
Method to be used if the innovation produces network effects

Returns:
the network effect produced by this innovation

getType

public abstract int getType()
Method to get the type of innovation this is

Returns:
either NETEFFADDING or VALUEADDING (the int values)

getUniqueID

public java.lang.String getUniqueID()
Method to get the unique ID of the innovation

Returns:
the uniqueID

getValueAdd

public double getValueAdd()
Method to be used if the innovation produces direct value

Returns:
the value this innovation adds to the basic subscription (a percentage)