svvitch
digital signage player
CaptureScene Class Reference

キャプチャーシーンクラス. More...

#include <CaptureScene.h>

Inheritance diagram for CaptureScene:
Collaboration diagram for CaptureScene:

List of all members.

Public Member Functions

 CaptureScene (Renderer &renderer)
virtual ‾CaptureScene ()
virtual bool initialize ()
LPDIRECT3DTEXTURE9 getCameraImage ()
virtual void process ()
virtual void draw1 ()
virtual void draw2 ()

Private Member Functions

bool createFilter ()
 設定されたデバイスからキャプチャ処理を行うフィルタグラフを生成します
void releaseFilter ()
 フィルタグラフを解放します
bool fetchDevice (REFCLSID clsidDeviceClass, int index, IBaseFilter **pBf, string &deviceName=string())
 キャプチャデバイスのフェッチを行い、デバイスのフィルタを返します。
bool getPin (IBaseFilter *filter, IPin **pin, PIN_DIRECTION dir)
 フィルタのピンを取得します
bool getInPin (IBaseFilter *filter, IPin **pin)
 指定したフィルタの入力ピンを返します
bool getOutPin (IBaseFilter *filter, IPin **pin)
 指定したフィルタの出力ピンを返します
void setWhiteBalance (IBaseFilter *src, bool autoFlag, long v=-100)
 ホワイトバランスの設定
void setExposure (IBaseFilter *src, bool autoFlag, long v=-100)
 露出の設定
bool routeCrossbar (IBaseFilter *pSrc, int no)
 クロスバーをルーティングします
int dumpFilter (IGraphBuilder *gb)
 フィルタのダンプ
const string getPinName (long lType)
 ピン名を返します
const string errorText (HRESULT hr)
 エラー文字列を返します
bool changePlaylist ()

Private Attributes

Poco::FastMutex _lock
DWORD _frame
DWORD _startup
BOOL _useStageCapture
int _deviceNo
int _routePinNo
int _deviceW
int _deviceH
int _deviceFPS
bool _useDeinterlace
bool _autoWhiteBalance
int _whiteBalance
bool _autoExposure
int _exposure
int _flipMode
GUID _deviceVideoType
RECT _clip
int _px
int _py
int _pw
int _ph
int _spx
int _spy
int _spw
int _sph
IBaseFilter * _device
IGraphBuilder * _gb
ICaptureGraphBuilder2 * _capture
DSVideoRendererPtr _vr
IMediaControl * _mc
LPDIRECT3DTEXTURE9 _cameraImage
LPDIRECT3DTEXTURE9 _sample
LPDIRECT3DSURFACE9 _surface
LPD3DXEFFECT _fx
int _sw
int _sh
LPINT _data1
LPINT _data2
LPINT _data3
bool _forceUpdate
int _intervalsBackground
int _intervalsForeground
LPBOOL _lookup
LPINT _block
LPBOOL _activeBlock
int _blockThreshold
int _lookupThreshold
int _detectCount
int _detectThreshold
string _detectedPlaylist
vector< string > _activePlaylist
int _ignoreDetectTime
int _ignoreDetectCount
MainScenePtr _main
ActiveMethod< bool, void,
CaptureScene
activeChangePlaylist
 プレイリストを変更します

Detailed Description

キャプチャーシーンクラス.

DirectShowキャプチャーソースから映像を取得する Scene クラスです。

Definition at line 19 of file CaptureScene.h.


Constructor & Destructor Documentation

Definition at line 8 of file CaptureScene.cpp.


Member Function Documentation

bool CaptureScene::changePlaylist ( ) [private]

Definition at line 906 of file CaptureScene.cpp.

Here is the call graph for this function:

bool CaptureScene::createFilter ( ) [private]

設定されたデバイスからキャプチャ処理を行うフィルタグラフを生成します

Definition at line 163 of file CaptureScene.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void CaptureScene::draw1 ( ) [virtual]

Reimplemented from Scene.

Definition at line 536 of file CaptureScene.cpp.

Here is the call graph for this function:

void CaptureScene::draw2 ( ) [virtual]

Reimplemented from Scene.

Definition at line 579 of file CaptureScene.cpp.

Here is the call graph for this function:

int CaptureScene::dumpFilter ( IGraphBuilder *  gb) [private]

フィルタのダンプ

Definition at line 831 of file CaptureScene.cpp.

Here is the caller graph for this function:

const string CaptureScene::errorText ( HRESULT  hr) [private]

エラー文字列を返します

Definition at line 896 of file CaptureScene.cpp.

Here is the caller graph for this function:

bool CaptureScene::fetchDevice ( REFCLSID  clsidDeviceClass,
int  index,
IBaseFilter **  pBf,
string &  deviceName = string() 
) [private]

キャプチャデバイスのフェッチを行い、デバイスのフィルタを返します。

Parameters:
clsidDeviceClassクラスID
indexデバイスのインデックス番号
pBf生成されたデバイスのフィルタ
deviceNameデバイス名でフェッチする場合に指定

Definition at line 638 of file CaptureScene.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

LPDIRECT3DTEXTURE9 CaptureScene::getCameraImage ( )

Definition at line 433 of file CaptureScene.cpp.

Here is the caller graph for this function:

bool CaptureScene::getInPin ( IBaseFilter *  filter,
IPin **  pin 
) [private]

指定したフィルタの入力ピンを返します

Definition at line 729 of file CaptureScene.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

bool CaptureScene::getOutPin ( IBaseFilter *  filter,
IPin **  pin 
) [private]

指定したフィルタの出力ピンを返します

Definition at line 734 of file CaptureScene.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

bool CaptureScene::getPin ( IBaseFilter *  filter,
IPin **  pin,
PIN_DIRECTION  dir 
) [private]

フィルタのピンを取得します

Parameters:
filter対象のフィルタ
pin取得できたピン
dirピン方向(IN/OUT)

Definition at line 703 of file CaptureScene.cpp.

Here is the caller graph for this function:

const string CaptureScene::getPinName ( long  lType) [private]

ピン名を返します

Definition at line 865 of file CaptureScene.cpp.

Here is the caller graph for this function:

bool CaptureScene::initialize ( ) [virtual]

Reimplemented from Scene.

Definition at line 37 of file CaptureScene.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void CaptureScene::process ( ) [virtual]

Reimplemented from Scene.

Definition at line 437 of file CaptureScene.cpp.

Here is the call graph for this function:

void CaptureScene::releaseFilter ( ) [private]

フィルタグラフを解放します

Definition at line 410 of file CaptureScene.cpp.

Here is the caller graph for this function:

bool CaptureScene::routeCrossbar ( IBaseFilter *  pSrc,
int  no 
) [private]

クロスバーをルーティングします

Definition at line 795 of file CaptureScene.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void CaptureScene::setExposure ( IBaseFilter *  src,
bool  autoFlag,
long  v = -100 
) [private]

露出の設定

Definition at line 768 of file CaptureScene.cpp.

Here is the caller graph for this function:

void CaptureScene::setWhiteBalance ( IBaseFilter *  src,
bool  autoFlag,
long  v = -100 
) [private]

ホワイトバランスの設定

Definition at line 738 of file CaptureScene.cpp.

Here is the caller graph for this function:

CaptureScene::‾CaptureScene ( ) [virtual]

Definition at line 22 of file CaptureScene.cpp.

Here is the call graph for this function:


Member Data Documentation

LPBOOL CaptureScene::_activeBlock [private]

Definition at line 72 of file CaptureScene.h.

vector<string> CaptureScene::_activePlaylist [private]

Definition at line 78 of file CaptureScene.h.

Definition at line 35 of file CaptureScene.h.

Definition at line 33 of file CaptureScene.h.

LPINT CaptureScene::_block [private]

Definition at line 71 of file CaptureScene.h.

Definition at line 73 of file CaptureScene.h.

LPDIRECT3DTEXTURE9 CaptureScene::_cameraImage [private]

Definition at line 57 of file CaptureScene.h.

ICaptureGraphBuilder2* CaptureScene::_capture [private]

Definition at line 53 of file CaptureScene.h.

RECT CaptureScene::_clip [private]

Definition at line 39 of file CaptureScene.h.

LPINT CaptureScene::_data1 [private]

Definition at line 64 of file CaptureScene.h.

LPINT CaptureScene::_data2 [private]

Definition at line 65 of file CaptureScene.h.

LPINT CaptureScene::_data3 [private]

Definition at line 66 of file CaptureScene.h.

Definition at line 75 of file CaptureScene.h.

Definition at line 77 of file CaptureScene.h.

Definition at line 76 of file CaptureScene.h.

IBaseFilter* CaptureScene::_device [private]

Definition at line 51 of file CaptureScene.h.

int CaptureScene::_deviceFPS [private]

Definition at line 31 of file CaptureScene.h.

int CaptureScene::_deviceH [private]

Definition at line 30 of file CaptureScene.h.

int CaptureScene::_deviceNo [private]

Definition at line 27 of file CaptureScene.h.

Definition at line 38 of file CaptureScene.h.

int CaptureScene::_deviceW [private]

Definition at line 29 of file CaptureScene.h.

int CaptureScene::_exposure [private]

Definition at line 36 of file CaptureScene.h.

int CaptureScene::_flipMode [private]

Definition at line 37 of file CaptureScene.h.

Definition at line 67 of file CaptureScene.h.

DWORD CaptureScene::_frame [private]

Definition at line 23 of file CaptureScene.h.

LPD3DXEFFECT CaptureScene::_fx [private]

Definition at line 60 of file CaptureScene.h.

IGraphBuilder* CaptureScene::_gb [private]

Definition at line 52 of file CaptureScene.h.

Definition at line 80 of file CaptureScene.h.

Definition at line 79 of file CaptureScene.h.

Definition at line 68 of file CaptureScene.h.

Definition at line 69 of file CaptureScene.h.

Poco::FastMutex CaptureScene::_lock [private]

Definition at line 22 of file CaptureScene.h.

LPBOOL CaptureScene::_lookup [private]

Definition at line 70 of file CaptureScene.h.

Definition at line 74 of file CaptureScene.h.

Definition at line 82 of file CaptureScene.h.

IMediaControl* CaptureScene::_mc [private]

Definition at line 55 of file CaptureScene.h.

int CaptureScene::_ph [private]

Definition at line 44 of file CaptureScene.h.

int CaptureScene::_pw [private]

Definition at line 43 of file CaptureScene.h.

int CaptureScene::_px [private]

Definition at line 41 of file CaptureScene.h.

int CaptureScene::_py [private]

Definition at line 42 of file CaptureScene.h.

Definition at line 28 of file CaptureScene.h.

LPDIRECT3DTEXTURE9 CaptureScene::_sample [private]

Definition at line 58 of file CaptureScene.h.

int CaptureScene::_sh [private]

Definition at line 63 of file CaptureScene.h.

int CaptureScene::_sph [private]

Definition at line 49 of file CaptureScene.h.

int CaptureScene::_spw [private]

Definition at line 48 of file CaptureScene.h.

int CaptureScene::_spx [private]

Definition at line 46 of file CaptureScene.h.

int CaptureScene::_spy [private]

Definition at line 47 of file CaptureScene.h.

DWORD CaptureScene::_startup [private]

Definition at line 24 of file CaptureScene.h.

LPDIRECT3DSURFACE9 CaptureScene::_surface [private]

Definition at line 59 of file CaptureScene.h.

int CaptureScene::_sw [private]

Definition at line 62 of file CaptureScene.h.

Definition at line 32 of file CaptureScene.h.

Definition at line 26 of file CaptureScene.h.

Definition at line 54 of file CaptureScene.h.

Definition at line 34 of file CaptureScene.h.

ActiveMethod<bool, void, CaptureScene> CaptureScene::activeChangePlaylist [private]

プレイリストを変更します

Definition at line 133 of file CaptureScene.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines