9 #import "MasCameraDevice.h" 10 #import "CameraDevice.h" 11 #import "MasMatrixUtil.h" 18 maxstAR::CameraDevice *cameraDevice;
25 - (instancetype)init {
28 cameraDevice = maxstAR::CameraDevice::getInstance();
33 - (MasResultCode) start:(
int) cameraId width:(
int) width height:(
int) height {
34 return (MasResultCode)cameraDevice->start(cameraId, width, height);
40 return cameraDevice->getWidth();
43 return cameraDevice->getHeight();
45 - (bool) setFocusMode:(MasFocusMode) mode {
46 return cameraDevice->setFocusMode((maxstAR::CameraDevice::FocusMode)mode);
48 - (bool) setFlashLightMode:(
bool) toggle {
49 return cameraDevice->setFlashLightMode(toggle);
51 - (bool) setAutoWhiteBalanceLock:(
bool) toggle {
52 return cameraDevice->setAutoWhiteBalanceLock(toggle);
54 - (void) flipVideo:(MasFlipDirection) direction toggle:(
bool) toggle {
55 cameraDevice->flipVideo((maxstAR::CameraDevice::FlipDirection)direction, toggle);
59 NSMutableArray *returnArray = [[NSMutableArray alloc] init];
60 std::list<std::string> paramlist = cameraDevice->getParamList();
61 for (std::string eachParam : paramlist) {
62 NSString *eachNSString = [NSString stringWithCString:eachParam.c_str() encoding:NSUTF8StringEncoding];
63 [returnArray addObject:eachNSString];
68 - (bool) setParam:(NSString*) key toggle:(
bool) toggle {
69 std::string keyString = std::string([key UTF8String]);
70 return cameraDevice->setParam(keyString, toggle);
72 - (bool) setParam:(NSString*) key value:(
int) value {
73 std::string keyString = std::string([key UTF8String]);
74 return cameraDevice->setParam(keyString, value);
76 - (bool) setParam:(NSString*) key min:(
int) min max:(
int) max {
77 std::string keyString = std::string([key UTF8String]);
78 return cameraDevice->setParam(keyString, min, max);
80 - (bool) setParam:(NSString*) key valueString:(NSString*) value {
81 std::string keyString = std::string([key UTF8String]);
82 std::string valueString = std::string([value UTF8String]);
83 return cameraDevice->setParam(keyString, valueString);
85 - (void) setNewFrame:(Byte *) data length:(
int) length width:(
int) width height:(
int) height format:(MasColorFormat) format {
86 cameraDevice->setNewFrame(data, length, width, height, (maxstAR::ColorFormat)format);
89 matrix_float4x4 returnMatrix = [
MasMatrixUtil makeMatrix:(float*)cameraDevice->getProjectionMatrix()];
93 matrix_float4x4 returnMatrix = [
MasMatrixUtil makeMatrix:(float*)cameraDevice->getBackgroundPlaneProjectionMatrix()];
matrix_float4x4 getBackgroundPlaneProjectionMatrix()
Get projection matrix for background plane rendering.
void stop()
Stop camera preview.
class for camera device handling
NSMutableArray * getParamList()
Get supported parameter key list.
matrix_float4x4 getProjectionMatrix()
Get projection matrix. This is used for augmented objects projection and background rendering...