Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

DepthCam Class Reference

#include <DepthCam.h>

Inheritance diagram for DepthCam:

Detailed Description

Definition at line 11 of file DepthCam.h.

List of all members.

Public Member Functions

 DepthCam ()
 constructor
 ~DepthCam ()
 destructor
virtual void doStart ()
 Delegate function for subclasses to be notified when the behavior starts up.
virtual void doStop ()
 Delegate function for subclasses to be notified when the behavior starts up.
virtual void doEvent ()
 Delegate function for event processing, the event itself is pointed to (only for the duration of the doEvent() call!) by event.
virtual std::string getDescription () const
 Gives a short description of what this particular instantiation does (in case a more specific description is needed on an individual basis).

Static Public Member Functions

static std::string getClassDescription ()
 Gives a short description of what this class of behaviors does... you should override this (but don't have to).

Static Public Attributes

static const unsigned int TCP_WIRELESS_BUFFER_SIZE = 640*480*2 + 1024
 size for full 640x480 depth map + 1KB for header
static const unsigned int UDP_WIRELESS_BUFFER_SIZE = 64*1024
 64KB is the max udp packet size

Protected Member Functions

void setupServer ()
 setup the server socket (visDepth)
void closeServer ()
 tear down the server socket (visDepth)
bool openPacket (FilterBankGenerator &fbkgen, unsigned int time, unsigned int layer)
bool writeDepth (const FilterBankEvent &fbke)
void closePacket ()
 closes and sends a packet, does nothing if no packet open
bool sendCloseConnectionPacket ()

Static Protected Member Functions

static int networkCallback (char *buf, int bytes)

Protected Attributes

SocketvisDepth
char * packet
char * cur
unsigned int avail
unsigned int max_buf
unsigned int lastProcessedTime
 timestamp of last sensor update sent

Static Protected Attributes

static DepthCamtheOne = NULL

Private Member Functions

 DepthCam (const DepthCam &)
DepthCamoperator= (const DepthCam &)

Constructor & Destructor Documentation

DepthCam::DepthCam (  ) 

constructor

Definition at line 18 of file DepthCam.cc.

DepthCam::~DepthCam (  ) 

destructor

Definition at line 17 of file DepthCam.h.

DepthCam::DepthCam ( const DepthCam  )  [private]

Member Function Documentation

void DepthCam::closePacket (  )  [protected]

closes and sends a packet, does nothing if no packet open

Definition at line 212 of file DepthCam.cc.

Referenced by doEvent(), and writeDepth().

void DepthCam::closeServer (  )  [protected]

tear down the server socket (visDepth)

Definition at line 87 of file DepthCam.cc.

Referenced by doEvent(), and doStop().

void DepthCam::doEvent (  )  [virtual]

Delegate function for event processing, the event itself is pointed to (only for the duration of the doEvent() call!) by event.

Default implementation watches for 'private' text message events (those forwarded by a BehaviorSwitchControl from ControllerGUI input) and will publically rebroadcast them. The idea is that your own processEvent gets first dibs, but if the behavior doesn't handle the text message, it will be handed off for others.

Reimplemented from CameraStreamBehavior.

Definition at line 43 of file DepthCam.cc.

void DepthCam::doStart (  )  [virtual]

Delegate function for subclasses to be notified when the behavior starts up.

Should be overridden by subclasses to subscribe to events, install motion commands, etc.

doStart() is basically a hook to allow subclasses to jump in and do some customization of behavior parameters while the behavior is starting. If you are writing a behavior class and do not expect further derivation, just override doStart() yourself. However, if you do expect further derivation of your class, consider using preStart() or postStart() instead, and leave doStart() for the 'leaf' classes.

Reimplemented from BehaviorBase.

Definition at line 26 of file DepthCam.cc.

void DepthCam::doStop (  )  [virtual]

Delegate function for subclasses to be notified when the behavior starts up.

May be overridden to cleanup when the behavior is shutting down. However events will automatically be unsubscribed, and by using addMotion(), motions will automatically be removed by stop(), so you may not need any cleanup.

Reimplemented from BehaviorBase.

Definition at line 36 of file DepthCam.cc.

static std::string DepthCam::getClassDescription (  )  [static]

Gives a short description of what this class of behaviors does... you should override this (but don't have to).

If you do override this, also consider overriding getDescription() to return it

Reimplemented from CameraStreamBehavior.

Definition at line 32 of file DepthCam.h.

Referenced by getDescription().

virtual std::string DepthCam::getDescription (  )  const [virtual]

Gives a short description of what this particular instantiation does (in case a more specific description is needed on an individual basis).

By default simply returns getName(), because any calls from a BehaviorBase function to getClassDescription() are going to call BehaviorBase::getClassDescription(), not ~YourSubClass~getClassDescription(), because static functions can't be virtual in C++ (doh!)

This means that getDescription called on a pointer to a BehaviorBase of unknown subtype would always return an empty string, which is pretty useless. So instead we return the name in this situation. If you want getDescription to return getClassDescription, you'll have to override it in your subclass to do so.

Reimplemented from CameraStreamBehavior.

Definition at line 37 of file DepthCam.h.

static int DepthCam::networkCallback ( char *  buf,
int  bytes 
) [static, protected]

Definition at line 42 of file DepthCam.h.

Referenced by setupServer().

bool DepthCam::openPacket ( FilterBankGenerator fbkgen,
unsigned int  time,
unsigned int  layer 
) [protected]

Definition at line 123 of file DepthCam.cc.

Referenced by writeDepth().

DepthCam& DepthCam::operator= ( const DepthCam  )  [private]
bool DepthCam::sendCloseConnectionPacket (  )  [protected]

Definition at line 221 of file DepthCam.cc.

Referenced by closeServer().

void DepthCam::setupServer (  )  [protected]

setup the server socket (visDepth)

Definition at line 99 of file DepthCam.cc.

Referenced by doEvent(), and doStart().

bool DepthCam::writeDepth ( const FilterBankEvent fbke  )  [protected]

Definition at line 147 of file DepthCam.cc.

Referenced by doEvent().


Member Data Documentation

unsigned int DepthCam::avail [protected]

Definition at line 57 of file DepthCam.h.

Referenced by closePacket(), openPacket(), and writeDepth().

char* DepthCam::cur [protected]

Definition at line 56 of file DepthCam.h.

Referenced by closePacket(), doEvent(), openPacket(), and writeDepth().

unsigned int DepthCam::lastProcessedTime [protected]

timestamp of last sensor update sent

Reimplemented from CameraStreamBehavior.

Definition at line 59 of file DepthCam.h.

Referenced by closePacket(), and doEvent().

unsigned int DepthCam::max_buf [protected]

Definition at line 58 of file DepthCam.h.

Referenced by openPacket(), and setupServer().

char* DepthCam::packet [protected]

Definition at line 55 of file DepthCam.h.

Referenced by closePacket(), doEvent(), and openPacket().

const unsigned int DepthCam::TCP_WIRELESS_BUFFER_SIZE = 640*480*2 + 1024 [static]

size for full 640x480 depth map + 1KB for header

Definition at line 22 of file DepthCam.h.

Referenced by setupServer().

DepthCam * DepthCam::theOne = NULL [static, protected]

Definition at line 40 of file DepthCam.h.

Referenced by DepthCam(), networkCallback(), and ~DepthCam().

const unsigned int DepthCam::UDP_WIRELESS_BUFFER_SIZE = 64*1024 [static]

64KB is the max udp packet size

Definition at line 24 of file DepthCam.h.

Referenced by setupServer().


The documentation for this class was generated from the following files:

Tekkotsu v5.1CVS
Generated Mon May 9 04:59:06 2016 by Doxygen 1.6.3