Play-/tools/MediaCenter/Source/VideoStream_ReadMotionVectors.h

42 lines
860 B
C
Raw Permalink Normal View History

#ifndef _VIDEOSTREAM_READMOTIONVECTORS_H_
#define _VIDEOSTREAM_READMOTIONVECTORS_H_
#include "VideoStream_Program.h"
#include "VideoStream_ReadMotionVector.h"
namespace VideoStream
{
class ReadMotionVectors : public Program
{
public:
2018-04-30 21:01:23 +01:00
ReadMotionVectors();
virtual ~ReadMotionVectors();
2018-04-30 21:01:23 +01:00
void SetRSizes(uint8, uint8);
void SetMotionVector(int16*);
2018-04-30 21:01:23 +01:00
void Reset();
void Execute(void*, Framework::CBitStream&);
private:
enum PROGRAM_STATE
{
STATE_INIT,
STATE_SINGLE_READVECTOR,
STATE_DOUBLE_FIRST_READFIELDSELECT,
STATE_DOUBLE_FIRST_READVECTOR,
STATE_DOUBLE_SECOND_READFIELDSELECT,
STATE_DOUBLE_SECOND_READVECTOR,
STATE_DONE,
};
2018-04-30 21:01:23 +01:00
ReadMotionVector m_motionVectorReader;
PROGRAM_STATE m_programState;
uint8 m_hrSize;
uint8 m_vrSize;
int16* m_motionVector;
};
}
#endif