diff options
Diffstat (limited to 'tools/gator/daemon/Source.cpp')
-rw-r--r-- | tools/gator/daemon/Source.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tools/gator/daemon/Source.cpp b/tools/gator/daemon/Source.cpp new file mode 100644 index 000000000000..60cf704e599b --- /dev/null +++ b/tools/gator/daemon/Source.cpp @@ -0,0 +1,33 @@ +/** + * Copyright (C) ARM Limited 2010-2014. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include "Source.h" + +#include "Logging.h" + +Source::Source() : mThreadID() { +} + +Source::~Source() { +} + +void Source::start() { + if (pthread_create(&mThreadID, NULL, runStatic, this)) { + logg->logError(__FILE__, __LINE__, "Failed to create source thread"); + handleException(); + } +} + +void Source::join() { + pthread_join(mThreadID, NULL); +} + +void *Source::runStatic(void *arg) { + static_cast<Source *>(arg)->run(); + return NULL; +} |