The base abstract class for khepera sensors. More...
Public Member Functions | |
KheperaSensor (ConfigurationParameters ¶ms, QString prefix) | |
Constructor. More... | |
virtual | ~KheperaSensor () |
Destructor. More... | |
virtual void | save (ConfigurationParameters ¶ms, QString prefix) |
Saves the parameters of the sensor into the ConfigurationParameters object. More... | |
Public Member Functions inherited from Sensor | |
Sensor (ConfigurationParameters ¶ms, QString prefix) | |
Constructor and Configure. More... | |
~Sensor () | |
Destructor. More... | |
QString | name () |
Return the name of the Sensor. More... | |
void | save (ConfigurationParameters ¶ms, QString prefix) |
Save the parameters into the ConfigurationParameters. More... | |
void | setName (QString name) |
Use this method for changing the name of the Sensor. More... | |
virtual int | size ()=0 |
Return the number of neurons on which the Sensor will set the input. More... | |
virtual void | update ()=0 |
Update the state of the Sensor every time step; the actual behaviour is implemented in subclasses. More... | |
Public Member Functions inherited from NoisyDevice | |
NoisyDevice (ConfigurationParameters ¶ms, QString prefix) | |
Constructor and Configure. More... | |
~NoisyDevice () | |
Destructor. More... | |
Public Member Functions inherited from ParameterSettableInConstructor | |
ParameterSettableInConstructor (ConfigurationParameters &, QString) | |
Public Member Functions inherited from ParameterSettable | |
void | addObserver (RuntimeParameterObserver *obs) |
T | getRuntimeParameter (QString paramName) |
virtual ParameterSettableUI * | getUIManager () |
virtual void | postConfigureInitialization () |
void | removeObserver (RuntimeParameterObserver *obs) |
void | setRuntimeParameter (QString paramName, T newvalue) |
QString | typeName () const |
Public Member Functions inherited from ConcurrentResourcesUser | |
void | addUsableResource (QString resource) |
void | addUsableResources (QStringList resources) |
void | declareResource (QString name, T *resource, QString lockBuddy="") |
void | deleteResource (QString name) |
T * | getResource (QString name, bool *resourceExists=NULL) |
bool | hasResource (QString name) const |
void | removeAllUsableResources () |
void | removeUsableResource (QString resource) |
void | removeUsableResources (QStringList resources) |
virtual void | shareResourcesWith (ResourcesUser *buddy) |
void | usableResources (QStringList resources) |
bool | usedResourcesExist (QStringList *nonExistingResources=NULL) const |
Static Public Member Functions | |
static void | describe (QString type) |
Describes all the parameters for this sensor. More... | |
Static Public Member Functions inherited from Sensor | |
static void | describe (QString type) |
Describe all the parameter for configuring the Sensor. More... | |
Static Public Member Functions inherited from NoisyDevice | |
static void | describe (QString type) |
Describe all the parameter for configuring the Sensor. More... | |
Static Public Member Functions inherited from ParameterSettable | |
static void | describe (QString type) |
static QString | fullParameterDescriptionPath (QString type, QString param) |
static QString | fullSubgroupDescriptionPath (QString type, QString sub) |
Protected Member Functions | |
virtual void | resourceChanged (QString resourceName, ResourceChangeType changeType) |
The function called when a resource used here is changed. More... | |
Protected Member Functions inherited from Sensor | |
QString | actualResourceNameForMultirobot (QString resourceName) const |
Returns the actual resource name to use. More... | |
void | checkAllNeededResourcesExist () |
Checks whether all resources we need are existing and throws an exception if they aren't. More... | |
void | resetNeededResourcesCheck () |
Resets the check on needed resources so that the next call to checkAllNeededResourcesExist() will perform the full check and not the quick one. More... | |
Protected Member Functions inherited from NoisyDevice | |
double | applyNoise (double v, double minValue, double maxValue) const |
Adds noise to the value. More... | |
Protected Member Functions inherited from ParameterSettable | |
void | notifyChangesToParam (QString paramName) |
Protected Member Functions inherited from ConcurrentResourcesUser | |
T * | getResource () |
Protected Member Functions inherited from ResourcesUser | |
ResourcesUser (const ResourcesUser &other) | |
virtual void | notifyResourceChange (ResourceHandler *resource, ResourceChangeType changeType)=0 |
ResourcesUser & | operator= (const ResourcesUser &other) |
Protected Attributes | |
QString | m_kheperaResource |
The name of the resource associated with the e-puck robot. More... | |
QString | m_neuronsIteratorResource |
The name of th resource associated with the neural network iterator. More... | |
Protected Attributes inherited from ResourcesUser | |
ResourceCollectionHolder | m_resources |
Additional Inherited Members | |
Public Types inherited from ParameterSettable | |
enum | Property |
Public Types inherited from ResourcesUser | |
typedef Resource::ResourceChangeType | ResourceChangeType |
Public Types inherited from Resource | |
enum | ResourceChangeType |
Public Attributes inherited from ParameterSettable | |
AllowMultiple | |
Default | |
IsList | |
IsMandatory | |
Static Public Attributes inherited from ParameterSettable | |
static const double | Infinity |
static const int | MaxInteger |
static const int | MinInteger |
Static Protected Member Functions inherited from ParameterSettable | |
static Descriptor | addTypeDescription (QString type, QString shortHelp, QString longHelp=QString("")) |
static void | setGraphicalEditor (QString type) |
Detailed Description
The base abstract class for khepera sensors.
This class simply has a couple of parameters that are common to all khepera sensors (see below). Some of the sensors work directly with Worldsim objects, while others need an instance of the Arena to work. Those that do not need an Arena generally also work with objects created using the Arena object, but in most of the cases are slower. See the description of individual sensors for more information about what each sensor needs.
In addition to all parameters defined by the parent class (Sensor), this class also defines the following parameters:
- khepera: the name of the resource associated with the khepera robot to use (default is "robot")
- neuronsIterator: the name of the resource associated with the neural network iterator (default is "neuronsIterator")
The resources required by this Sensor are:
- name defined by the khepera parameter: the simulated physical khepera robot
- name defined by the neuronsIterator parameter: the object to iterate over neurons of the neural network
Definition at line 58 of file kheperasensors.h.
Constructor & Destructor Documentation
KheperaSensor | ( | ConfigurationParameters & | params, |
QString | prefix | ||
) |
Constructor.
This also reads configuration parameters. Moreover this adds the khepera and neuronsIterator resources to the list of resources used here
- Parameters
-
params the ConfigurationParameters containing the parameters for the sensor prefix the path prefix to the paramters for this sensor
Definition at line 34 of file kheperasensors.cpp.
References Sensor::actualResourceNameForMultirobot(), ConfigurationHelper::getString(), KheperaSensor::m_kheperaResource, KheperaSensor::m_neuronsIteratorResource, and ConcurrentResourcesUser::usableResources().
|
virtual |
Destructor.
Definition at line 47 of file kheperasensors.cpp.
Member Function Documentation
|
static |
Describes all the parameters for this sensor.
- Parameters
-
type the name with which this sensor is registered into the factory
Definition at line 63 of file kheperasensors.cpp.
References ParameterSettable::addTypeDescription(), and Sensor::describe().
Referenced by KheperaProximityIRSensor::describe(), KheperaSampledProximityIRSensor::describe(), KheperaSampledLightSensor::describe(), KheperaGroundSensor::describe(), and KheperaWheelSpeedsSensor::describe().
|
protectedvirtual |
The function called when a resource used here is changed.
- Parameters
-
resourceName the name of the resource that has changed. chageType the type of change the resource has gone through (whether it was created, modified or deleted)
Reimplemented from ConcurrentResourcesUser.
Definition at line 74 of file kheperasensors.cpp.
References Sensor::resetNeededResourcesCheck(), and ConcurrentResourcesUser::resourceChanged().
|
virtual |
Saves the parameters of the sensor into the ConfigurationParameters object.
- Parameters
-
params the ConfigurationParameters where save the parameters of the sensors prefix the path prefix for the parameters to save
Implements ParameterSettable.
Reimplemented in KheperaWheelSpeedsSensor, KheperaGroundSensor, KheperaSampledLightSensor, KheperaSampledProximityIRSensor, and KheperaProximityIRSensor.
Definition at line 52 of file kheperasensors.cpp.
References ConfigurationParameters::createParameter(), KheperaSensor::m_kheperaResource, KheperaSensor::m_neuronsIteratorResource, Sensor::save(), and ConfigurationParameters::startObjectParameters().
Referenced by KheperaProximityIRSensor::save(), KheperaSampledProximityIRSensor::save(), KheperaSampledLightSensor::save(), KheperaGroundSensor::save(), and KheperaWheelSpeedsSensor::save().
Member Data Documentation
|
protected |
The name of the resource associated with the e-puck robot.
Definition at line 110 of file kheperasensors.h.
Referenced by KheperaSensor::KheperaSensor(), KheperaSensor::save(), KheperaSampledProximityIRSensor::update(), and KheperaSampledLightSensor::update().
|
protected |
The name of th resource associated with the neural network iterator.
Definition at line 116 of file kheperasensors.h.
Referenced by KheperaSensor::KheperaSensor(), and KheperaSensor::save().
The documentation for this class was generated from the following files:
- experiments/include/kheperasensors.h
- experiments/src/kheperasensors.cpp