Mercurial Hosting > traffic-intelligence
annotate include/InputFrameListModule.h @ 400:7ef1071e3cc3
clean up of input classes for list of images and video files
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Mon, 29 Jul 2013 18:06:55 -0400 |
parents | c389fae9689a |
children | b829ebdc18e6 |
rev | line source |
---|---|
400
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
1 #ifndef INPUT_FRAME_LIST_MODULE_H |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
2 #define INPUT_FRAME_LIST_MODULE_H |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
3 |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
4 #include "InputFrameProviderIface.h" |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
5 #include <string> |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
6 #include <vector> |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
7 |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
8 class InputFrameListModule : public InputFrameProviderIface |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
9 { |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
10 public: |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
11 InputFrameListModule(const std::string& basePath,const std::string& pictureList); |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
12 ~InputFrameListModule(); |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
13 |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
14 |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
15 |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
16 bool getNextFrame(cv::Mat&); |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
17 unsigned int getNbFrames(); |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
18 bool isOpen() const { return mInit;} |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
19 void setFrameNumber(const int& frameNumber) {} // does nothing for now |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
20 |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
21 virtual const cv::Size& getSize() const { return mSize;} |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
22 private: |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
23 void loadFileList(const std::string& path); |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
24 std::vector<std::string> mFileList; |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
25 unsigned int mCurrentIdx; |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
26 bool mInit; |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
27 std::string mBasePath; |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
28 cv::Mat mCurrentFrame; |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
29 cv::Size mSize; |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
30 |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
31 }; |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
32 |
7ef1071e3cc3
clean up of input classes for list of images and video files
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
399
diff
changeset
|
33 #endif |