Main Page | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members | Related Pages

LOW_compJalousieController Class Reference

#include <LOW_compJalousieController.h>

Inheritance diagram for LOW_compJalousieController:

Inheritance graph
[legend]
Collaboration diagram for LOW_compJalousieController:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 class_DERIVE_FROM_EXCEPTION (compJalousieController_error, component_error)
 LOW_compJalousieController (const LOW_devDS2405 &inPowerControl, const LOW_devDS2405 &inDirectionControl, const float inClosingTime, const float inOpeningTime, const float inAngleClosingTime, const float inAngleOpeningTime)
 ~LOW_compJalousieController ()
void setPosition (float inPos, float inAngle)
float getClosingTime () const
void setClosingTime (const float inClosingTime)
float getOpeningTime () const
void setOpeningTime (const float inOpeningTime)
float getAngleClosingTime () const
void setAngleClosingTime (const float inAngleClosingTime)
float getAngleOpeningTime () const
void setAngleOpeningTime (const float inAngleOpeningTime)
void measureTransitionDelays ()
void getTransitionDelays (unsigned int &outStop2upDelay, unsigned int &outUp2stopDelay, unsigned int &outStop2downDelay, unsigned int &outDown2stopDelay, unsigned int &outUp2downDelay, unsigned int &outDown2upDelay)
void setTransitionDelays (const unsigned int inStop2upDelay, const unsigned int inUp2stopDelay, const unsigned int inStop2downDelay, const unsigned int inDown2stopDelay, const unsigned int inUp2downDelay, const unsigned int inDown2upDelay)

Protected Member Functions

void moveUp ()
void moveDown ()
void stopMove ()
void moveUpStop (const unsigned long inMillis)
void moveDownStop (const unsigned long inMillis)

Protected Attributes

const int jcSerialNum
const LOW_devDS2405powerControl
const LOW_devDS2405directionControl
float closingTime
float openingTime
float angleClosingTime
float angleOpeningTime
unsigned int stop2upDelay
unsigned int up2stopDelay
unsigned int stop2downDelay
unsigned int down2stopDelay
unsigned int up2downDelay
unsigned int down2upDelay
LOW_thread_mutex__linkRecMutex

Static Protected Attributes

const int fullMovementAdditionMillis = 500

Private Member Functions

void setPowerOn ()
void setPowerOff ()
void setDirectionDown ()
void setDirectionUp ()
unsigned int averageMillis (const std::vector< unsigned int > &inVals)

Private Attributes

bool powerIsOn
bool directionIsDown

Static Private Attributes

int jcCounter = 0

Friends

class manualMove
class jcLock

Detailed Description

Todo:
Documentation of class.

Calibration methods.

Locking during angle moves.

Method for angle move only

PROVIDE ASSIGNMENT CONSTRUCTOR

Author:
Harald Roelle

Definition at line 36 of file LOW_compJalousieController.h.


Constructor & Destructor Documentation

LOW_compJalousieController::LOW_compJalousieController const LOW_devDS2405 inPowerControl,
const LOW_devDS2405 inDirectionControl,
const float  inClosingTime,
const float  inOpeningTime,
const float  inAngleClosingTime,
const float  inAngleOpeningTime
 

Definition at line 44 of file LOW_compJalousieController.cpp.

References __linkRecMutex, LOW_devDS2405::cmd_Match(), LOW_devDS2405::cmd_SearchActive(), directionControl, directionIsDown, down2stopDelay, down2upDelay, LOW_netSegment::getHasExternalPower(), LOW_device::getID(), LOW_device::getNetSegment(), jcLock, LOW_thread_mutex::mutexKind_recursive, LOW_thread_Factory::new_mutex(), powerControl, powerIsOn, stop2downDelay, stop2upDelay, up2downDelay, and up2stopDelay.

LOW_compJalousieController::~LOW_compJalousieController  ) 
 

Definition at line 98 of file LOW_compJalousieController.cpp.

References __linkRecMutex, jcLock, and stopMove().


Member Function Documentation

unsigned int LOW_compJalousieController::averageMillis const std::vector< unsigned int > &  inVals  )  [private]
 

Definition at line 431 of file LOW_compJalousieController.cpp.

Referenced by measureTransitionDelays().

LOW_compJalousieController::class_DERIVE_FROM_EXCEPTION compJalousieController_error  ,
component_error 
 

float LOW_compJalousieController::getAngleClosingTime  )  const
 

Definition at line 199 of file LOW_compJalousieController.cpp.

References angleClosingTime.

float LOW_compJalousieController::getAngleOpeningTime  )  const
 

Definition at line 212 of file LOW_compJalousieController.cpp.

References angleOpeningTime.

float LOW_compJalousieController::getClosingTime  )  const
 

Definition at line 173 of file LOW_compJalousieController.cpp.

References closingTime.

float LOW_compJalousieController::getOpeningTime  )  const
 

Definition at line 186 of file LOW_compJalousieController.cpp.

References openingTime.

void LOW_compJalousieController::getTransitionDelays unsigned int &  outStop2upDelay,
unsigned int &  outUp2stopDelay,
unsigned int &  outStop2downDelay,
unsigned int &  outDown2stopDelay,
unsigned int &  outUp2downDelay,
unsigned int &  outDown2upDelay
 

Definition at line 284 of file LOW_compJalousieController.cpp.

References down2stopDelay, down2upDelay, stop2downDelay, stop2upDelay, up2downDelay, and up2stopDelay.

void LOW_compJalousieController::measureTransitionDelays  ) 
 

Definition at line 225 of file LOW_compJalousieController.cpp.

References averageMillis(), LOW_platformMisc::diffTimestamp(), down2stopDelay, down2upDelay, LOW_platformMisc::getTimestamp(), jcLock, LOW_platformMisc::timestamp_t::milSec, moveDown(), moveUp(), stop2downDelay, stop2upDelay, stopMove(), up2downDelay, and up2stopDelay.

void LOW_compJalousieController::moveDown  )  [protected]
 

Definition at line 327 of file LOW_compJalousieController.cpp.

References setDirectionDown(), and setPowerOn().

Referenced by measureTransitionDelays(), LOW_compJalousieController::manualMove::moveDown(), and moveDownStop().

void LOW_compJalousieController::moveDownStop const unsigned long  inMillis  )  [protected]
 

Definition at line 361 of file LOW_compJalousieController.cpp.

References down2stopDelay, LOW_platformMisc::milliSleep(), moveDown(), stopMove(), and up2stopDelay.

Referenced by setPosition().

void LOW_compJalousieController::moveUp  )  [protected]
 

Definition at line 318 of file LOW_compJalousieController.cpp.

References setDirectionUp(), and setPowerOn().

Referenced by measureTransitionDelays(), LOW_compJalousieController::manualMove::moveUp(), and moveUpStop().

void LOW_compJalousieController::moveUpStop const unsigned long  inMillis  )  [protected]
 

Definition at line 345 of file LOW_compJalousieController.cpp.

References LOW_platformMisc::milliSleep(), moveUp(), stopMove(), and up2stopDelay.

Referenced by setPosition().

void LOW_compJalousieController::setAngleClosingTime const float  inAngleClosingTime  ) 
 

Definition at line 205 of file LOW_compJalousieController.cpp.

References angleClosingTime, and jcLock.

void LOW_compJalousieController::setAngleOpeningTime const float  inAngleOpeningTime  ) 
 

Definition at line 218 of file LOW_compJalousieController.cpp.

References angleOpeningTime, and jcLock.

void LOW_compJalousieController::setClosingTime const float  inClosingTime  ) 
 

Definition at line 179 of file LOW_compJalousieController.cpp.

References closingTime, and jcLock.

void LOW_compJalousieController::setDirectionDown  )  [private]
 

Definition at line 407 of file LOW_compJalousieController.cpp.

References LOW_devDS2405::cmd_MatchRead(), directionControl, and directionIsDown.

Referenced by moveDown().

void LOW_compJalousieController::setDirectionUp  )  [private]
 

Definition at line 419 of file LOW_compJalousieController.cpp.

References LOW_devDS2405::cmd_MatchRead(), directionControl, and directionIsDown.

Referenced by moveUp(), and stopMove().

void LOW_compJalousieController::setOpeningTime const float  inOpeningTime  ) 
 

Definition at line 192 of file LOW_compJalousieController.cpp.

References jcLock, and openingTime.

void LOW_compJalousieController::setPosition float  inPos,
float  inAngle
 

Definition at line 119 of file LOW_compJalousieController.cpp.

References angleClosingTime, angleOpeningTime, closingTime, fullMovementAdditionMillis, jcLock, moveDownStop(), moveUpStop(), and openingTime.

void LOW_compJalousieController::setPowerOff  )  [private]
 

Definition at line 395 of file LOW_compJalousieController.cpp.

References LOW_devDS2405::cmd_MatchRead(), powerControl, and powerIsOn.

Referenced by stopMove().

void LOW_compJalousieController::setPowerOn  )  [private]
 

Definition at line 383 of file LOW_compJalousieController.cpp.

References LOW_devDS2405::cmd_MatchRead(), powerControl, and powerIsOn.

Referenced by moveDown(), and moveUp().

void LOW_compJalousieController::setTransitionDelays const unsigned int  inStop2upDelay,
const unsigned int  inUp2stopDelay,
const unsigned int  inStop2downDelay,
const unsigned int  inDown2stopDelay,
const unsigned int  inUp2downDelay,
const unsigned int  inDown2upDelay
 

Definition at line 297 of file LOW_compJalousieController.cpp.

References down2stopDelay, down2upDelay, jcLock, stop2downDelay, stop2upDelay, up2downDelay, and up2stopDelay.

void LOW_compJalousieController::stopMove  )  [protected]
 

Definition at line 336 of file LOW_compJalousieController.cpp.

References setDirectionUp(), and setPowerOff().

Referenced by measureTransitionDelays(), moveDownStop(), moveUpStop(), LOW_compJalousieController::manualMove::stopMove(), and ~LOW_compJalousieController().


Friends And Related Function Documentation

friend class jcLock [friend]
 

Definition at line 163 of file LOW_compJalousieController.h.

Referenced by LOW_compJalousieController(), measureTransitionDelays(), setAngleClosingTime(), setAngleOpeningTime(), setClosingTime(), setOpeningTime(), setPosition(), setTransitionDelays(), and ~LOW_compJalousieController().

friend class manualMove [friend]
 

Definition at line 162 of file LOW_compJalousieController.h.


Member Data Documentation

LOW_thread_mutex* LOW_compJalousieController::__linkRecMutex [protected]
 

Definition at line 194 of file LOW_compJalousieController.h.

Referenced by LOW_compJalousieController::jcLock::jcLock(), LOW_compJalousieController(), LOW_compJalousieController::jcLock::~jcLock(), and ~LOW_compJalousieController().

float LOW_compJalousieController::angleClosingTime [protected]
 

Definition at line 186 of file LOW_compJalousieController.h.

Referenced by getAngleClosingTime(), setAngleClosingTime(), and setPosition().

float LOW_compJalousieController::angleOpeningTime [protected]
 

Definition at line 187 of file LOW_compJalousieController.h.

Referenced by getAngleOpeningTime(), setAngleOpeningTime(), and setPosition().

float LOW_compJalousieController::closingTime [protected]
 

Definition at line 184 of file LOW_compJalousieController.h.

Referenced by getClosingTime(), setClosingTime(), and setPosition().

const LOW_devDS2405& LOW_compJalousieController::directionControl [protected]
 

Definition at line 183 of file LOW_compJalousieController.h.

Referenced by LOW_compJalousieController(), setDirectionDown(), and setDirectionUp().

bool LOW_compJalousieController::directionIsDown [private]
 

Definition at line 233 of file LOW_compJalousieController.h.

Referenced by LOW_compJalousieController(), setDirectionDown(), and setDirectionUp().

unsigned int LOW_compJalousieController::down2stopDelay [protected]
 

Definition at line 191 of file LOW_compJalousieController.h.

Referenced by getTransitionDelays(), LOW_compJalousieController(), measureTransitionDelays(), moveDownStop(), and setTransitionDelays().

unsigned int LOW_compJalousieController::down2upDelay [protected]
 

Definition at line 193 of file LOW_compJalousieController.h.

Referenced by getTransitionDelays(), LOW_compJalousieController(), measureTransitionDelays(), and setTransitionDelays().

const int LOW_compJalousieController::fullMovementAdditionMillis = 500 [static, protected]
 

Definition at line 172 of file LOW_compJalousieController.h.

Referenced by setPosition().

int LOW_compJalousieController::jcCounter = 0 [static, private]
 

Definition at line 35 of file LOW_compJalousieController.cpp.

const int LOW_compJalousieController::jcSerialNum [protected]
 

Definition at line 181 of file LOW_compJalousieController.h.

float LOW_compJalousieController::openingTime [protected]
 

Definition at line 185 of file LOW_compJalousieController.h.

Referenced by getOpeningTime(), setOpeningTime(), and setPosition().

const LOW_devDS2405& LOW_compJalousieController::powerControl [protected]
 

Definition at line 182 of file LOW_compJalousieController.h.

Referenced by LOW_compJalousieController(), setPowerOff(), and setPowerOn().

bool LOW_compJalousieController::powerIsOn [private]
 

Definition at line 232 of file LOW_compJalousieController.h.

Referenced by LOW_compJalousieController(), setPowerOff(), and setPowerOn().

unsigned int LOW_compJalousieController::stop2downDelay [protected]
 

Definition at line 190 of file LOW_compJalousieController.h.

Referenced by getTransitionDelays(), LOW_compJalousieController(), measureTransitionDelays(), and setTransitionDelays().

unsigned int LOW_compJalousieController::stop2upDelay [protected]
 

Definition at line 188 of file LOW_compJalousieController.h.

Referenced by getTransitionDelays(), LOW_compJalousieController(), measureTransitionDelays(), and setTransitionDelays().

unsigned int LOW_compJalousieController::up2downDelay [protected]
 

Definition at line 192 of file LOW_compJalousieController.h.

Referenced by getTransitionDelays(), LOW_compJalousieController(), measureTransitionDelays(), and setTransitionDelays().

unsigned int LOW_compJalousieController::up2stopDelay [protected]
 

Definition at line 189 of file LOW_compJalousieController.h.

Referenced by getTransitionDelays(), LOW_compJalousieController(), measureTransitionDelays(), moveDownStop(), moveUpStop(), and setTransitionDelays().


The documentation for this class was generated from the following files:
Generated on Tue Feb 3 11:30:46 2004 for OneWireLibrary++ by doxygen 1.3.2