00001 #ifndef SXCOMPONENTRUNNER_H_INCLUDED 00002 #define SXCOMPONENTRUNNER_H_INCLUDED 00003 00004 #include <QThread> 00005 #include "sxComponent.h" 00006 00010 class SX_SDKEXPORT sxComponentRunner : public QThread 00011 { 00012 public: 00013 virtual ~sxComponentRunner(); 00014 explicit sxComponentRunner(sxComponent * comp); 00015 sxComponent * Component() const; 00016 bool Stop(unsigned long wtimeout = ULONG_MAX); 00017 protected: 00018 void run(); 00019 00020 void SourceComponentLoop(); 00021 void ProcessorComponentLoop(); 00022 void SinkComponentLoop(); 00023 00024 sxComponent * xComp; 00025 }; 00026 00027 00028 #endif // SXCOMPONENTRUNNER_H_INCLUDED