11 #ifndef _LIBALEXTRACTOR_ALEXTRACTOR_ALEXTRACTOR_H_
12 #define _LIBALEXTRACTOR_ALEXTRACTOR_ALEXTRACTOR_H_
17 # include <boost/scoped_ptr.hpp>
22 class ALExtractorPrivate;
43 const std::string& pName);
55 virtual void subscribe(
const std::string &pSubscribedName,
57 const float &pPrecision);
66 void subscribe(
const std::string &pSubscribedName);
74 virtual void updatePeriod(
const std::string &pSubscribedName,
82 virtual void updatePrecision(
const std::string &pSubscribedName,
83 const float &pPrecision);
90 virtual void unsubscribe(
const std::string &pSubscribedName);
97 virtual int getCurrentPeriod();
104 virtual float getCurrentPrecision();
111 virtual int getMyPeriod(
const std::string &pSubscribedName);
118 virtual float getMyPrecision(
const std::string &pSubscribedName);
125 ALValue getSubscribersInfo();
131 virtual std::string httpGet();
143 virtual void xStartDetection(
const int pPeriod,
144 const float pPrecision) = 0;
155 virtual void xUpdateParameters(
const int pPeriod,
const float pPrecision);
162 virtual void xStopDetection() = 0;
172 virtual int getDefaultPeriod();
181 virtual float getDefaultPrecision();
188 std::vector<std::string> getOutputNames(
void);
192 boost::scoped_ptr<ALExtractorPrivate> _private;
196 void xUpdateParameters();
200 #endif // _LIBALEXTRACTOR_ALEXTRACTOR_ALEXTRACTOR_H_