Добрый день,
В настоящее время я начал работать над реализацией живой камеры в виде таблицы … Голубой блок на изображении — это место, где будет появляться камера …
Я использую Foscam и Hikvision Camera SDK, и я получил его для работы на Foscam …
Однако я застрял на Hikvision из-за небольшой проблемы, которую мне нужно преодолеть …
Мой основной класс для этого табличного представления — это UIViewController (из-за пользовательского макета), реализованный в Objective-C (то есть .m для реализации) (назовите это CamerasVC.m).
Hikvision, однако, имеет SDK Objective-C ++, который заставил меня иметь реализацию .mm … Когда я пытаюсь реализовать подкласс Hikvision (назовите его HikvisionCameraPreview.mm) в CamerasVC, я получаю много ошибок, относящихся к Objective -C ++ против Objective-C в библиотеке Hikvision …
Код Используется, чтобы попробовать это в CamerasVC.m:
#import "HikvisionCameraPreview.h"#import "HikvisionCameraPreview.h"
@interface CamerasVC ()
@end
@implementation CamerasVC
//code omitted
- (UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath {
//code omitted
if ([[((ObjectCameras*)[tableData objectAtIndex:indexPath.row]).processName uppercaseString] isEqual:[@"HikVision" uppercaseString]])
{
//HIKVISION - this causes much errors
HikvisionCameraPreview *thisMiniView = [[HikvisionCameraPreview alloc]initWithFrame:vidView.frame];
[thisMiniView setSelectedCamera:[tableData objectAtIndex:indexPath.row]];
[vidView addSubview:thisMiniView];
}
else
{
//FOSCAM - which is working
FosCamCameraPreview *thisMiniView = [[FosCamCameraPreview alloc]initWithFrame:vidView.frame];
[thisMiniView setSelectedCamera:[tableData objectAtIndex:indexPath.row]];
[vidView addSubview:thisMiniView];
}
}
//code omitted
@end
Мой вопрос: есть ли способ реализовать реализацию .mm в файле реализации .m?
Задача ещё не решена.
Других решений пока нет …