Enki  1.9
Classes | Typedefs | Functions | Variables
Enki Namespace Reference

Enki is the namespace of the Enki simulator. All Enki functions and classes excepted the math one are inside this namespace. More...

Classes

class  ActiveSoundObject
 ActiveSoundObject can be inherited by any robot that want to emit sound. More...
 
class  ActiveSoundSource
 Time limited sound emitter. More...
 
class  Bluetooth
 Implementation of an onboard Bluetooth module. More...
 
class  BluetoothBase
 Implementation of a Bluetooth base coordinating the Bluetooth modules. More...
 
class  CircularCam
 1D Circular camera More...
 
struct  Color
 A color in RGBA. More...
 
struct  DepthTest
 Standard depth test. More...
 
class  DifferentialWheeled
 
class  EPuck
 A simple model of the E-puck robot. More...
 
class  EPuckScannerTurret
 The rotating, long range distance sensor turret of the E-puck robot. More...
 
class  FastRandom
 A fast random generator. More...
 
class  FeedableSbot
 An "improved" Sbot that can interact with SbotActiveObject. More...
 
class  FourWayMic
 A generic sound sensor/microphone. More...
 
class  GlobalInteraction
 Interacts with the whole world. More...
 
class  GroundSensor
 A ground infrared sensor. More...
 
struct  InteractionRadiusCompare
 A functor then compares the radius of two local interactions. More...
 
class  IRSensor
 A generic infrared sensor. More...
 
class  Khepera
 A simple model of the Khepera robot. More...
 
class  LocalInteraction
 Interacts with another object or wall only up to a certain distance. More...
 
class  Marxbot
 A very simplified model of the Sbot mobile robot. More...
 
struct  Matrix22
 A 2x2 matrix. More...
 
class  Microphone
 A generic sound sensor/microphone. More...
 
class  OmniCam
 1D omnidirectional circular camera, based on 2 CircularCam Pixels start at -PI and then follow mathematical orientation to PI More...
 
class  PhysicalObject
 A situated object in the world with mass, geometry properties, physical properties, ... More...
 
struct  PixelOperationFunctor
 Functor for pixel operation. More...
 
struct  Polygone
 Polygone, which is a vector of points. Anti-clockwise, standard trigonometric orientation. More...
 
class  Robot
 A robot is a PhysicalObject that has additional interactions and a controller. More...
 
class  Sbot
 A very simplified model of the Sbot mobile robot. More...
 
class  SbotActiveObject
 SbotActiveObject give or remove energy to nearby Sbots through an SbotFeeding interaction. More...
 
class  SbotActiveSoundObject
 SbotActiveSoundObject give or remove energy to nearby Sbots through an SbotFeeding interaction. More...
 
class  SbotFeeding
 Feeding interaction gives or remove energy to nearby Sbots. More...
 
class  SbotGlobalSound
 Interaction sound between all Sbots. More...
 
class  SbotMicrophone
 Specific microphone for S-bots. More...
 
struct  Segment
 A segment in a 2D space, basically two points. More...
 
class  SoundSbot
 This Sbot version has sound capabilities inherited from ActiveSoundObject, as well as the feeding and usual capabilities of an Sbot. More...
 
class  Thymio2
 A simple model of the Thymio robot. More...
 
struct  UniformRand
 Functor to be used with <algorithm> More...
 
struct  Vector
 A vector in a 2D space. More...
 
class  World
 The world is the container of all objects and robots. More...
 

Typedefs

typedef Vector Point
 A point in a 2D space, another name for a vector. More...
 
typedef double(* MicrophoneResponseModel) (double, double)
 A function for manipulating acquired sound, normally to model saturation, distance decreasing or frequency response.
 
typedef std::vector< ColorTexture
 A texture.
 
typedef std::vector< TextureTextures
 Textures for all sides of an object.
 

Functions

std::ostream & operator<< (std::ostream &outs, const Vector &vector)
 Print a vector to a stream.
 
std::ostream & operator<< (std::ostream &outs, const Polygone &polygone)
 Print a polygone to a stream. More...
 
double normalizeAngle (double angle)
 Normlize an angle to be between -PI and +PI. More...
 
Point getIntersection (const Segment &s1, const Segment &s2)
 get the intersection point between two line segments returns Point(HUGE_VAL, HUGE_VAL) if there's no intersection added by yvan..nosp@m.bour.nosp@m.quin@.nosp@m.epfl.nosp@m..ch More...
 
double getTriangleAreaTwice (const Point &a, const Point &b, const Point &c)
 Returns 2 times the signed triangle area. More...
 
double getTriangleHeight (const Point &a, const Point &b, const Point &c)
 Returns signed height of triangle abc with base ab. More...
 
double uniformRand (void)
 Return a number in [0;1[ in a uniform distribution. More...
 
unsigned intRand (unsigned max)
 Return a number between [0;max[ in integer in a uniform distribution. More...
 
bool boolRand (double prob=0.5)
 Return true with a probability prob. If no argument is given, prob = 0.5. More...
 
double gaussianRand (double mean, double sigm)
 Return a random number with a gaussian distribution of a certain mean and standard deviation. More...
 
template<typename T >
clamp (T v, T min, T max)
 
double marxbotVirtualBumperResponseFunction (double dist)
 
double MicrophonePseudoRealResponseModel (double signal, double distance)
 Response model for sound on s-bot.
 
std::ostream & operator<< (std::ostream &os, const Color &c)
 

Variables

Enki::DepthTest depthTest
 Standard depth test instance.
 
FastRandom random
 Fast random for use by Enki.
 

Detailed Description

Enki is the namespace of the Enki simulator. All Enki functions and classes excepted the math one are inside this namespace.