OpenBTS-UMTS/CommonLibs
Tom Tsou 274bda43a8 CommonLibs: Add thread cancellation capability
For clean shutdown in the transceiver we need to cancel and join
running threads for orderly unwinding. Thread cancellation points
already exist, so we just need to be able to call on the threads to
exit out when stopping or shutting down.

Don't error when joining a NULL thread, which would be the case if a
thread was stopped before ever being started to begin with.

Signed-off-by: Tom Tsou <tom@tsou.cc>
2014-12-04 13:14:29 +01:00
..
BitVector.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
BitVector.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
BitVectorTest.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
ByteVector.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
ByteVector.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Configuration.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Configuration.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
ConfigurationTest.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
F16.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
F16Test.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Interthread.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
InterthreadTest.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
LinkedLists.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
LinkedLists.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
LogTest.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Logger.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Logger.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Makefile.am Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
MemoryLeak.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
README.common Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Regexp.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
RegexpTest.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
ScalarTypes.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Sockets.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Sockets.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
SocketsTest.cpp build: ASN.1 and GCC build fixes 2014-12-04 13:14:12 +01:00
Threads.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Threads.h CommonLibs: Add thread cancellation capability 2014-12-04 13:14:29 +01:00
Timeval.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Timeval.h build: ASN.1 and GCC build fixes 2014-12-04 13:14:12 +01:00
TimevalTest.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
TurboCoder.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
TurboCoder.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
URLEncode.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
URLEncode.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
URLEncodeTest.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Utils.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Utils.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
Vector.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
VectorTest.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
example.config Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
sqlite3util.cpp Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00
sqlite3util.h Initial commit of OpenBTS-UMTS code 2014-10-16 14:42:05 -07:00

README.common

This directory contains common-use classes, most of which are not specific to GSM.

Vector		A vector class (NOT std::vector<>) that supports
		aliased subvectors.  Not resizable.
BitVector	Bit-indexable vectors based on Vector.
Interthread	A set of C++ wrappers for pthread facilities.
Sockets		A set of C++ wrappers for Unix sockets.
Timeval		A C++ wraper for struct timeval.
LinkLists	Classes for simple linked lists of pointers.
Logger		A logging interface based on syslogd.
Configuration	A key-value configuration table.
Regexp		A C++ wrapper on stdlib regular expressions.

Do "make tests" to build a series of unit tests for these classes.