MCPcopy Create free account
hub / github.com/OpenKinect/libfreenect2 / getProperty

Method getProperty

src/openni2/VideoStream.cpp:176–222  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

174}
175
176OniStatus VideoStream::getProperty(int propertyId, void* data, int* pDataSize)
177{
178 switch (propertyId)
179 {
180 default:
181 case ONI_STREAM_PROPERTY_HORIZONTAL_FOV: // float: radians
182 case ONI_STREAM_PROPERTY_VERTICAL_FOV: // float: radians
183 case ONI_STREAM_PROPERTY_MAX_VALUE: // int
184 case ONI_STREAM_PROPERTY_MIN_VALUE: // int
185 case ONI_STREAM_PROPERTY_STRIDE: // int
186 case ONI_STREAM_PROPERTY_NUMBER_OF_FRAMES: // int
187 // camera
188 case ONI_STREAM_PROPERTY_AUTO_WHITE_BALANCE: // OniBool
189 case ONI_STREAM_PROPERTY_AUTO_EXPOSURE: // OniBool
190 // xn
191 case XN_STREAM_PROPERTY_INPUT_FORMAT: // unsigned long long
192 case XN_STREAM_PROPERTY_CROPPING_MODE: // XnCroppingMode
193 return ONI_STATUS_NOT_SUPPORTED;
194
195 case ONI_STREAM_PROPERTY_VIDEO_MODE: // OniVideoMode*
196 if (*pDataSize != sizeof(OniVideoMode))
197 {
198 LogError("Unexpected size for ONI_STREAM_PROPERTY_VIDEO_MODE");
199 return ONI_STATUS_ERROR;
200 }
201 *(static_cast<OniVideoMode*>(data)) = video_mode;
202 return ONI_STATUS_OK;
203
204 case ONI_STREAM_PROPERTY_CROPPING: // OniCropping*
205 if (*pDataSize != sizeof(OniCropping))
206 {
207 LogError("Unexpected size for ONI_STREAM_PROPERTY_CROPPING");
208 return ONI_STATUS_ERROR;
209 }
210 *(static_cast<OniCropping*>(data)) = cropping;
211 return ONI_STATUS_OK;
212
213 case ONI_STREAM_PROPERTY_MIRRORING: // OniBool
214 if (*pDataSize != sizeof(OniBool))
215 {
216 LogError("Unexpected size for ONI_STREAM_PROPERTY_MIRRORING");
217 return ONI_STATUS_ERROR;
218 }
219 *(static_cast<OniBool*>(data)) = mirroring;
220 return ONI_STATUS_OK;
221 }
222}
223OniStatus VideoStream::setProperty(int propertyId, const void* data, int dataSize)
224{
225 switch (propertyId)

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected