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

LOW_link Class Reference

Abstract base class for 1-Wire link adapters. More...

#include <LOW_link.h>

Inheritance diagram for LOW_link:

Inheritance graph
[legend]
Collaboration diagram for LOW_link:

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::vector< LOW_link *> linkPtrVec_t
 Vector type of link class pointers. More...

typedef LOW_objectIDFactory::objectID_t linkID_t
 Type for individual link ID number. More...

enum  strongPullup_t {
  pullUp_16_4 = 0x00, pullUp_65_5, pullUp_131, pullUp_262,
  pullUp_524, pullUp_1048, pullUp_NONE = 0xff
}
 Type for strong pullup period specification. More...

enum  progPulse_t {
  progPulse_32 = 0x00, progPulse_64, progPulse_128, progPulse_256,
  progPulse_512, progPulse_1024, progPulse_2048
}
 Type for 12V program pulse period specification. More...


Public Methods

 class_DERIVE_FROM_EXCEPTION (link_error, LOW_exception)
 Exception base class for all exceptions thrown by LOW_link. More...

 class_DERIVE_FROM_EXCEPTION (comm_error, link_error)
 Exception class to be thrown on communication errors. More...

 class_DERIVE_FROM_EXCEPTION (internal_error, link_error)
 Exception class to be thrown on pure internal errors. More...

 class_DERIVE_FROM_EXCEPTION (illegalSpeed_error, link_error)
 Exception class to be thrown on errors related to currently selected wire speed. More...

 class_DERIVE_FROM_EXCEPTION (illegalLevel_error, link_error)
 Exception class to be thrown on errors related to requested voltage level. More...

 class_DERIVE_FROM_EXCEPTION (notAllowed_error, link_error)
 Exception class to be thrown on access violation errors. More...

 class_DERIVE_FROM_EXCEPTION (sizeMismatch_error, link_error)
virtual ~LOW_link ()
 Destructor. More...

virtual bool operator== (LOW_link &inLink) const
 Comparison based on linkID. More...

Bus touch (write/read) methods
virtual bool touchBit (const bool inSendBit, const strongPullup_t inPullup=pullUp_NONE)=0
 Send 1 bit of communication to the 1-Wire net and return the result 1 bit read from the 1-Wire net. More...

virtual uint8_t touchByte (const uint8_t inSendByte, const strongPullup_t inPullup=pullUp_NONE)=0
 Send 8 bits of communication to the 1-Wire net and return the result 8 bits read from the 1-Wire net. More...

virtual byteVec_t touchBlock (const byteVec_t &inBytes, const strongPullup_t inPullup=pullUp_NONE)
 Send block of communication to the 1-Wire net and return the resulting bytes read from the 1-Wire net. More...

Bus read methods
virtual bool readDataBit (const strongPullup_t inPullup=pullUp_NONE)
 Receive 1 bit from the 1-Wire net by previously sending one bit of read communication to the 1-Wire net. More...

virtual uint8_t readDataByte (const strongPullup_t inPullup=pullUp_NONE)
 Receive 1 byte from the 1-Wire net by previously sending 8 bits of read communication to the 1-Wire net. More...

virtual void readData (byteVec_t &outBytes, const strongPullup_t inPullup=pullUp_NONE)
 Receive a block of bytes from the 1-Wire net by previously sending a block of bytes of read communication to the 1-Wire Net. More...

Bus write methods
virtual void writeData (const bool inSendBit, const strongPullup_t inPullup=pullUp_NONE)
 Send 1 bit to the 1-Wire net and verify that the bit read from the 1-Wire net is the same (bus write operation). More...

virtual void writeData (const uint8_t inSendByte, const strongPullup_t inPullup=pullUp_NONE)
 Send 1 byte to the 1-Wire net and verify that the byte read from the 1-Wire net is the same (bus write operation). More...

virtual void writeData (const byteVec_t &inSendBytes, const strongPullup_t inPullup=pullUp_NONE)
 Send block of bytes to the 1-Wire net and verify that the bytes block read from the 1-Wire net are the same (bus write operation). More...

Higher level actions
virtual LOW_deviceID::deviceIDVec_t searchDevices (const bool inOnlyAlarm, const LOW_deviceIDRaw inPreload, const LOW_deviceIDRaw::devFamCode_t inFamCode, const bool inDoReset)
 Execute a complete search sequence from preloaded ID vector. More...

Misc methods
linkID_t getID () const
 Get ID of the link. More...

virtual std::string getLinkFamily () const=0
 Get the link's family type. More...

bool getHasProgramPulse () const
 Get wether the adapter is capable of 12V Program pulse. More...

bool getHasExternalPower () const
 Get whether there is an external power line on the segment. More...

bool getAllowProgPulse () const
 Get wether the program pulse should be allowed. More...

virtual void resetLinkAdapter ()=0
 Reset the adapter. More...

virtual bool resetBus ()=0
 Reset all of the devices on the 1-Wire net. More...

virtual void strongPullup (const unsigned long inMicroSecs)=0
 Set the 1-Wire net line level to strong pullup for a specified time. More...

virtual void strongPullup (const strongPullup_t inPullupTime)=0
 Set the 1-Wire net line level to strong pullup for a specified time. More...

virtual void programPulse (const unsigned long inMicroSecs)=0
 Create a 12 volt pulse on the 1-Wire net for programming EPROM devices. More...

virtual void programPulse (const progPulse_t inPulseTime)=0
 Create a 12 volt pulse on the 1-Wire net for programming EPROM devices. More...


Protected Methods

 LOW_link (const bool inHasProgramPulse, const bool inHasExternalPower, const bool inAllowProgPulse=false)
 Constructor. More...

virtual void doSearchSequence (const LOW_deviceIDRaw &inBranchVector, LOW_deviceIDRaw &outFoundID, LOW_deviceIDRaw &outDiscrVec)
 Execute a single search sequence on the bus. More...


Protected Attributes

const linkID_t linkID
 Individual ID of the link adapter. More...

bool hasProgramPulse
 Wether the adapter is capable of 12V Program pulse. More...

const bool hasExternalPower
 Wether the attached bus supplies external power. More...

const bool allowProgPulse
 Wether the program pulse should be allowed. More...


Private Attributes

LOW_thread_mutex__linkRecMutex
 Mutex for exclusive access. More...


Friends

class commLock
 Needed to access the mutex. More...


Detailed Description

Abstract base class for 1-Wire link adapters.

Any link class representing a concrete 1-Wire link adapter must inherit from this class.

The class provides some generic implementations relying only on touch*() methods. Although beeing sufficient for basic functionality, deriving classes are invited to overload those methods, especially in case the hardware provides a native implementation. Prominent examples for that:

This class is thread-safe.

Todo:
Provide assignment operator and copy constructor

Provide strongPullup method with specialized type

Author:
Harald Roelle , Parts of the documentation by Dallas Semiconductors / Maxim Integrated Products

Definition at line 53 of file LOW_link.h.


Member Typedef Documentation

typedef LOW_objectIDFactory::objectID_t LOW_link::linkID_t
 

Type for individual link ID number.

Definition at line 126 of file LOW_link.h.

typedef std::vector<LOW_link*> LOW_link::linkPtrVec_t
 

Vector type of link class pointers.

Definition at line 124 of file LOW_link.h.


Member Enumeration Documentation

enum LOW_link::progPulse_t
 

Type for 12V program pulse period specification.

Period may vary a little, depending on actual device.

Enumeration values:
progPulse_32  32 microsec.
progPulse_64  64 microsec.
progPulse_128  128 microsec.
progPulse_256  256 microsec.
progPulse_512  512 microsec.
progPulse_1024  1024 microsec.
progPulse_2048  2032 / 2048 microsec.

Definition at line 141 of file LOW_link.h.

Referenced by LOW_linkPassiveSerial::getLinkFamily(), LOW_linkDS2490::getLinkFamily(), and LOW_linkDS2480B::getLinkFamily().

enum LOW_link::strongPullup_t
 

Type for strong pullup period specification.

Period may vary a little, depending on actual device.

Enumeration values:
pullUp_16_4  16 / 16.4 ms.
pullUp_65_5  64 / 65.5 ms.
pullUp_131  128 / 131 ms.
pullUp_262  256 / 262 ms.
pullUp_524  512 / 524 ms.
pullUp_1048  1024 / 1048 ms.
pullUp_NONE  no pullup.

Definition at line 130 of file LOW_link.h.

Referenced by LOW_linkPassiveSerial::getLinkFamily(), LOW_linkDS2490::getLinkFamily(), and LOW_linkDS2480B::getLinkFamily().


Constructor & Destructor Documentation

LOW_link::~LOW_link   [virtual]
 

Destructor.

Definition at line 38 of file LOW_link.cpp.

References __linkRecMutex.

LOW_link::LOW_link const bool    inHasProgramPulse,
const bool    inHasExternalPower,
const bool    inAllowProgPulse = false
[protected]
 

Constructor.

Parameters:
inHasProgramPulse  Whether the adapter is capable of 12V Program pulse.
inHasExternalPower  Whether the attached bus supplies external power.
inAllowProgPulse  Whether the program pulse should be allowed.

Definition at line 28 of file LOW_link.cpp.

References __linkRecMutex, LOW_thread_mutex::mutexKind_recursive, and LOW_thread_Factory::new_mutex().


Member Function Documentation

LOW_link::class_DERIVE_FROM_EXCEPTION sizeMismatch_error   ,
link_error   
 

LOW_link::class_DERIVE_FROM_EXCEPTION notAllowed_error   ,
link_error   
 

Exception class to be thrown on access violation errors.

LOW_link::class_DERIVE_FROM_EXCEPTION illegalLevel_error   ,
link_error   
 

Exception class to be thrown on errors related to requested voltage level.

LOW_link::class_DERIVE_FROM_EXCEPTION illegalSpeed_error   ,
link_error   
 

Exception class to be thrown on errors related to currently selected wire speed.

LOW_link::class_DERIVE_FROM_EXCEPTION internal_error   ,
link_error   
 

Exception class to be thrown on pure internal errors.

LOW_link::class_DERIVE_FROM_EXCEPTION comm_error   ,
link_error   
 

Exception class to be thrown on communication errors.

LOW_link::class_DERIVE_FROM_EXCEPTION link_error   ,
LOW_exception   
 

Exception base class for all exceptions thrown by LOW_link.

void LOW_link::doSearchSequence const LOW_deviceIDRaw   inBranchVector,
LOW_deviceIDRaw   outFoundID,
LOW_deviceIDRaw   outDiscrVec
[protected, virtual]
 

Execute a single search sequence on the bus.

A default implementation relying on bit i/o methods is provided.

Parameters:
inBranchVector  ID vector to start the search sequence.
outFoundID  Device ID found.
outDiscrVec  Discrepancy vector after the search.

Reimplemented in LOW_linkDS2480B, and LOW_linkDS2490.

Definition at line 267 of file LOW_link.cpp.

References commLock, LOW_deviceIDRaw::getBit(), readDataBit(), LOW_deviceIDRaw::setBit(), and writeData().

Referenced by searchDevices().

bool LOW_link::getAllowProgPulse   const
 

Get wether the program pulse should be allowed.

Returns:
Wether the program pulse should be allowed.

Definition at line 80 of file LOW_link.cpp.

References allowProgPulse.

bool LOW_link::getHasExternalPower   const
 

Get whether there is an external power line on the segment.

Returns:
Whether there is an external power line on the segment.

Definition at line 74 of file LOW_link.cpp.

References hasExternalPower.

Referenced by LOW_netSegment::LOW_netSegment().

bool LOW_link::getHasProgramPulse   const
 

Get wether the adapter is capable of 12V Program pulse.

Returns:
Wether the adapter is capable of 12V Program pulse.

Definition at line 68 of file LOW_link.cpp.

References hasProgramPulse.

uint32_t LOW_link::getID   const
 

Get ID of the link.

Returns:
ID of the link.

Definition at line 62 of file LOW_link.cpp.

References linkID.

virtual std::string LOW_link::getLinkFamily   const [pure virtual]
 

Get the link's family type.

Note: Subclasses must implement this method to return a clear text name of their kind.

Returns:
Family type name of the link.

Reimplemented in LOW_linkDS2480B, LOW_linkDS2490, and LOW_linkPassiveSerial.

bool LOW_link::operator== LOW_link &    inLink const [virtual]
 

Comparison based on linkID.

Definition at line 50 of file LOW_link.cpp.

References linkID.

virtual void LOW_link::programPulse const progPulse_t    inPulseTime [pure virtual]
 

Create a 12 volt pulse on the 1-Wire net for programming EPROM devices.

For EPROM programming, only a single slave device should be connected to the 1-Wire bus and the cable must be short, not to exceed a few meters.

Note: One should not attempt generating a programming pulse with a non-EPROM device on the bus; this may damage the device as well as the link controller.

Note: Dependening on the implementation, time may only as accurate as the operating system permits (scheduling!).

Parameters:
inPulseTime  Pulse time by predefined type.

Reimplemented in LOW_linkDS2480B, LOW_linkDS2490, and LOW_linkPassiveSerial.

virtual void LOW_link::programPulse const unsigned long    inMicroSecs [pure virtual]
 

Create a 12 volt pulse on the 1-Wire net for programming EPROM devices.

For EPROM programming, only a single slave device should be connected to the 1-Wire bus and the cable must be short, not to exceed a few meters.

Note: One should not attempt generating a programming pulse with a non-EPROM device on the bus; this may damage the device as well as the link controller.

Note: Dependening on the implementation, time may only as accurate as the operating system permits (scheduling!).

Parameters:
inMicroSecs  Pulse time in micro seconds.

Reimplemented in LOW_linkDS2480B, LOW_linkDS2490, and LOW_linkPassiveSerial.

void LOW_link::readData byteVec_t   outBytes,
const strongPullup_t    inPullup = pullUp_NONE
[virtual]
 

Receive a block of bytes from the 1-Wire net by previously sending a block of bytes of read communication to the 1-Wire Net.

Note: When the strong pullup is selected it will NOT appear after each byte sent, only after the last byte the pullup is done!

A default implementation relying on the touch methods is provided.

Parameters:
outBytes  Values that were reveived. Read length is determined by the preset length of the vector.
inPullup  Optional strong pullup time following each 8 bit write/read cycle.

Definition at line 130 of file LOW_link.cpp.

References byteVec_t, commLock, and touchBlock().

Referenced by LOW_devDS2890::cmd_ReadControlRegister(), LOW_devDS2890::cmd_ReadPosition(), LOW_netSegment::cmd_ReadROM(), LOW_devDS1820::cmd_ReadScratchpad(), LOW_devDS2406::cmd_ChannelAccess::readData(), and LOW_devDS2406::readMemUniversal().

bool LOW_link::readDataBit const strongPullup_t    inPullup = pullUp_NONE [virtual]
 

Receive 1 bit from the 1-Wire net by previously sending one bit of read communication to the 1-Wire net.

A default implementation relying on the touch methods is provided.

Parameters:
inPullup  Optional strong pullup time following the write/read cycle.
Returns:
Bit that was reveived.

Definition at line 114 of file LOW_link.cpp.

References commLock, and touchBit().

Referenced by LOW_devDS1820::cmd_ConvertT(), LOW_devDS2405::cmd_MatchRead(), LOW_devDS1820::cmd_ReadPowerSupply(), LOW_devDS1820::cmd_RecallE2(), LOW_devDS2405::cmd_SearchRead(), LOW_devDS2890::cmd_WriteControlRegister(), LOW_devDS2890::cmd_WritePosition(), doSearchSequence(), and LOW_devDS2406::cmd_ChannelAccess::readDataBit().

uint8_t LOW_link::readDataByte const strongPullup_t    inPullup = pullUp_NONE [virtual]
 

Receive 1 byte from the 1-Wire net by previously sending 8 bits of read communication to the 1-Wire net.

A default implementation relying on the touch methods is provided.

Parameters:
inPullup  Optional strong pullup time following the write/read cycle.
Returns:
Byte that was reveived.

Definition at line 122 of file LOW_link.cpp.

References commLock, and touchByte().

Referenced by LOW_devDS2406::cmd_ChannelAccess::cmd_ChannelAccess(), LOW_devDS2890::cmd_Decrement(), LOW_devDS2890::cmd_Increment(), LOW_devDS2890::cmd_WriteControlRegister(), LOW_devDS2890::cmd_WritePosition(), LOW_devDS2406::cmd_WriteStatus(), LOW_devDS2406::cmd_ChannelAccess::readDataByte(), and LOW_devDS2406::readMemUniversal().

virtual bool LOW_link::resetBus   [pure virtual]
 

Reset all of the devices on the 1-Wire net.

Returns:
true: Presense pulse(s) detected, device(s) reset false: No presense pulses detected
Todo:
Differentiate simple presence pulse and alarming presence pulse.

Reimplemented in LOW_linkDS2480B, LOW_linkDS2490, and LOW_linkPassiveSerial.

Referenced by LOW_devDS2890::cmd_Decrement(), LOW_devDS2890::cmd_Increment(), LOW_netSegment::cmd_MatchROM(), LOW_netSegment::cmd_ReadROM(), LOW_netSegment::cmd_SkipROM(), LOW_devDS2890::cmd_WriteControlRegister(), LOW_devDS2890::cmd_WritePosition(), LOW_devDS2406::cmd_WriteStatus(), LOW_devDS2406::readMemUniversal(), searchDevices(), and LOW_devDS2406::cmd_ChannelAccess::~cmd_ChannelAccess().

virtual void LOW_link::resetLinkAdapter   [pure virtual]
 

Reset the adapter.

Note: This does not necessarily include a reset on the 1-Wire net. Whether this is done or net is left to the concrete implementation.

Reimplemented in LOW_linkDS2480B, LOW_linkDS2490, and LOW_linkPassiveSerial.

LOW_deviceID::deviceIDVec_t LOW_link::searchDevices const bool    inOnlyAlarm,
const LOW_deviceIDRaw    inPreload,
const LOW_deviceIDRaw::devFamCode_t    inFamCode,
const bool    inDoReset
[virtual]
 

Execute a complete search sequence from preloaded ID vector.

Search is executed on the currently active bus configuration. No branch selection is done in advance.

A default implementation relying on the doSearchSequence() method is provided.

Parameters:
inOnlyAlarm  Select normal search or alarmin only search.
inPreload  The ID vector to start the search from.
inFamCode  Narrow search to given family code. To not narrow use LOW_device::anyDev_famCode.
Returns:
List of devices found on the currently active bus configuration.

Reimplemented in LOW_linkDS2490.

Definition at line 185 of file LOW_link.cpp.

References LOW_device::anyDev_famCode, commLock, LOW_deviceIDRaw::devFamCode_t, LOW_deviceID::deviceIDVec_t, doSearchSequence(), LOW_deviceIDRaw::getBit(), LOW_deviceIDRaw::getFamilyCode(), resetBus(), LOW_device::SearchAlarmROM_COMMAND, LOW_device::SearchROM_COMMAND, LOW_deviceIDRaw::setBit(), LOW_deviceIDRaw::setFamilyCode(), and writeData().

Referenced by LOW_netSegment::cmd_SearchROM(), and LOW_netSegment::cmd_SearchROMVerify().

virtual void LOW_link::strongPullup const strongPullup_t    inPullupTime [pure virtual]
 

Set the 1-Wire net line level to strong pullup for a specified time.

Note: Dependening on the implementation, time may only as accurate as the operating system permits (scheduling!).

Parameters:
inPullupTime  Pullup time by predefined type.

Reimplemented in LOW_linkDS2480B, LOW_linkDS2490, and LOW_linkPassiveSerial.

virtual void LOW_link::strongPullup const unsigned long    inMicroSecs [pure virtual]
 

Set the 1-Wire net line level to strong pullup for a specified time.

Note: Dependening on the implementation, time may only as accurate as the operating system permits (scheduling!).

Parameters:
inMicroSecs  Pullup time in micro seconds.

Reimplemented in LOW_linkDS2480B, LOW_linkDS2490, and LOW_linkPassiveSerial.

virtual bool LOW_link::touchBit const bool    inSendBit,
const strongPullup_t    inPullup = pullUp_NONE
[pure virtual]
 

Send 1 bit of communication to the 1-Wire net and return the result 1 bit read from the 1-Wire net.

Parameters:
inSendBit  Bit to send.
inPullup  Optional strong pullup time following the write/read cycle.
Returns:
Bit that was reveived.

Reimplemented in LOW_linkDS2480B, LOW_linkDS2490, and LOW_linkPassiveSerial.

Referenced by readDataBit(), and writeData().

byteVec_t LOW_link::touchBlock const byteVec_t   inBytes,
const strongPullup_t    inPullup = pullUp_NONE
[virtual]
 

Send block of communication to the 1-Wire net and return the resulting bytes read from the 1-Wire net.

A default implementation relying on the touchByte() method is provided.

Note: When the strong pullup is selected it will NOT appear after each byte sent, only after the last byte the pullup is done!

Parameters:
inBytes  Byte block to send.
inPullup  Optional strong pullup time following each 8 bit write/read cycle.
Returns:
Byte block that was reveived. Length is equal to number of sent bytes.

Reimplemented in LOW_linkDS2480B, and LOW_linkDS2490.

Definition at line 92 of file LOW_link.cpp.

References byteVec_t, commLock, pullUp_NONE, and touchByte().

Referenced by readData(), and writeData().

virtual uint8_t LOW_link::touchByte const uint8_t    inSendByte,
const strongPullup_t    inPullup = pullUp_NONE
[pure virtual]
 

Send 8 bits of communication to the 1-Wire net and return the result 8 bits read from the 1-Wire net.

Parameters:
inSendByte  Byte to send.
inPullup  Optional strong pullup time following the 8 bit write/read cycle.
Returns:
Byte that was reveived.

Reimplemented in LOW_linkDS2480B, LOW_linkDS2490, and LOW_linkPassiveSerial.

Referenced by readDataByte(), touchBlock(), and writeData().

void LOW_link::writeData const byteVec_t   inSendBytes,
const strongPullup_t    inPullup = pullUp_NONE
[virtual]
 

Send block of bytes to the 1-Wire net and verify that the bytes block read from the 1-Wire net are the same (bus write operation).

A default implementation relying on the touch methods is provided.

Note: When the strong pullup is selected it will NOT appear after each byte sent, only after the last byte the pullup is done!

Parameters:
inSendBytes  Block of bytes to send.
inPullup  Optional strong pullup time following each 8 bit write/read cycle.

Definition at line 166 of file LOW_link.cpp.

References byteVec_t, commLock, and touchBlock().

void LOW_link::writeData const uint8_t    inSendByte,
const strongPullup_t    inPullup = pullUp_NONE
[virtual]
 

Send 1 byte to the 1-Wire net and verify that the byte read from the 1-Wire net is the same (bus write operation).

A default implementation relying on the touch methods is provided.

Parameters:
inSendByte  Byte to send.
inPullup  Optional strong pullup time following the write/read cycle.

Definition at line 157 of file LOW_link.cpp.

References commLock, and touchByte().

void LOW_link::writeData const bool    inSendBit,
const strongPullup_t    inPullup = pullUp_NONE
[virtual]
 

Send 1 bit to the 1-Wire net and verify that the bit read from the 1-Wire net is the same (bus write operation).

A default implementation relying on the touch methods is provided.

Parameters:
inSendBit  Bit to send.
inPullup  Optional strong pullup time following the write/read cycle.

Definition at line 148 of file LOW_link.cpp.

References commLock, and touchBit().

Referenced by LOW_devDS2406::cmd_ChannelAccess::cmd_ChannelAccess(), LOW_devDS1820::cmd_ConvertT(), LOW_devDS1820::cmd_CopyScratchpad(), LOW_devDS2890::cmd_Decrement(), LOW_devDS2890::cmd_Increment(), LOW_netSegment::cmd_MatchROM(), LOW_devDS2890::cmd_ReadControlRegister(), LOW_devDS2890::cmd_ReadPosition(), LOW_devDS1820::cmd_ReadPowerSupply(), LOW_netSegment::cmd_ReadROM(), LOW_devDS1820::cmd_ReadScratchpad(), LOW_devDS1820::cmd_RecallE2(), LOW_netSegment::cmd_SkipROM(), LOW_devDS2890::cmd_WriteControlRegister(), LOW_devDS2890::cmd_WritePosition(), LOW_devDS1820::cmd_WriteScratchpad(), LOW_devDS2406::cmd_WriteStatus(), doSearchSequence(), LOW_devDS2406::readMemUniversal(), searchDevices(), and LOW_devDS2406::cmd_ChannelAccess::writeData().


Friends And Related Function Documentation

friend class commLock [friend]
 

Needed to access the mutex.

Definition at line 502 of file LOW_link.h.

Referenced by doSearchSequence(), readData(), readDataBit(), readDataByte(), searchDevices(), touchBlock(), and writeData().


Member Data Documentation

LOW_thread_mutex* LOW_link::__linkRecMutex [private]
 

Mutex for exclusive access.

Definition at line 510 of file LOW_link.h.

Referenced by LOW_link::commLock::commLock(), LOW_link(), LOW_link::commLock::~commLock(), and ~LOW_link().

const bool LOW_link::allowProgPulse [protected]
 

Wether the program pulse should be allowed.

Definition at line 460 of file LOW_link.h.

Referenced by getAllowProgPulse(), LOW_linkPassiveSerial::programPulse(), LOW_linkDS2490::programPulse(), LOW_linkDS2480B::programPulse(), and LOW_linkDS2490::resetLinkAdapter().

const bool LOW_link::hasExternalPower [protected]
 

Wether the attached bus supplies external power.

Definition at line 459 of file LOW_link.h.

Referenced by getHasExternalPower().

bool LOW_link::hasProgramPulse [protected]
 

Wether the adapter is capable of 12V Program pulse.

Definition at line 458 of file LOW_link.h.

Referenced by getHasProgramPulse(), LOW_linkPassiveSerial::programPulse(), LOW_linkDS2490::programPulse(), LOW_linkDS2480B::programPulse(), LOW_linkDS2480B::resetBus(), and LOW_linkDS2490::resetLinkAdapter().

const linkID_t LOW_link::linkID [protected]
 

Individual ID of the link adapter.

Definition at line 457 of file LOW_link.h.

Referenced by getID(), and operator==().


The documentation for this class was generated from the following files:
Generated on Mon Nov 10 10:32:47 2003 by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001