回答編集履歴
1
補足
test
CHANGED
@@ -69,3 +69,45 @@
|
|
69
69
|
|
70
70
|
|
71
71
|
そんな感じで公式ドキュメント眺めるとええぞ!みたいな話でした。
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
---
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
> しかしこの整数の必要性は何なのでしょうか?
|
80
|
+
|
81
|
+
|
82
|
+
|
83
|
+
という疑問が出るだろうと思って
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
> メンバ関数名が`set`だけじゃ何をセットするやらわからんので第1引数はそれを識別するものだ、ということがわかりますね。
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
と書いたんですが不十分だったようなので補足します。まあ別に`set`/`get`っていう関数に**enumを渡して動的ディスパッチ**しなくても、例えば`set_cap_prop_fps()`みたいな関数を作る実装にしても良かったと思うんですが、シンボル名を減らしたかったのか何なのか、とにかくOpenCVの開発者たちはその選択肢を選ばなかったようです。
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
---
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
> CV_CAP_PROP_FRAME_WIDTHの正体についてはCamera.Handle,"Width", &nTempを引数とする関数PvAttrUint32Getとしてもいいのでしょうか?
|
100
|
+
|
101
|
+
|
102
|
+
|
103
|
+
だめです。落ち着いて上で取り上げた[`VideoCapture::set()`](https://docs.opencv.org/3.4.0/d8/dfe/classcv_1_1VideoCapture.html#aa6480e6972ef4c00d74814ec841a2939)を読んでください。
|
104
|
+
|
105
|
+
|
106
|
+
|
107
|
+
> Reading / writing properties involves many layers. Some unexpected result might happens along this chain.
|
108
|
+
|
109
|
+
`VideoCapture -> API Backend -> Operating System -> Device Driver -> Device Hardware`
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
とあります。いいですか?`API Backend`ですよ?で、ググればわかるのですでにお調べのことと思いますが、PvAttrUint32GetっていうのはPvAPIのものです。他のAPIの場合も当然ありえます。
|