using System;
|
|
using UIKit;
|
using Foundation;
|
using ObjCRuntime;
|
using CoreGraphics;
|
|
namespace com.freeview.global
|
{
|
// @interface Video : NSObject
|
[BaseType (typeof (NSObject))]
|
interface Video
|
{
|
//+(void)Logout;
|
[Static]
|
[Export ("Logout")]
|
void Logout ();
|
// +(void)ShowNotice;
|
[Static]
|
[Export ("ShowNotice")]
|
void ShowNotice ();
|
// +(void)init:(NSString *)Token sipID:(NSString *)sipID DevelopCode:(NSString *)DevelopCode TenantCode:(NSString *)TenantCode;
|
[Static]
|
[Export ("init:sipID:DevelopCode:TenantCode:")]
|
void Init (string Token, string sipID, string DevelopCode, string TenantCode);
|
|
// +(void)init:(NSString *)Token sipID:(NSString *)sipID;
|
[Static]
|
[Export ("init:sipID:")]
|
void Init (string Token, string sipID);
|
|
// +(void)ShowVideo;
|
[Static]
|
[Export ("ShowVideo")]
|
void ShowVideo ();
|
|
// +(BOOL)FVapplication:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
|
[Static]
|
[Export ("FVapplication:didFinishLaunchingWithOptions:")]
|
bool FVapplication (UIApplication application, NSDictionary launchOptions);
|
|
// +(void)FVapplicationWillResignActive:(UIApplication *)application;
|
[Static]
|
[Export ("FVapplicationWillResignActive:")]
|
void FVapplicationWillResignActive (UIApplication application);
|
|
// +(void)FVapplicationDidEnterBackground:(UIApplication *)application;
|
[Static]
|
[Export ("FVapplicationDidEnterBackground:")]
|
void FVapplicationDidEnterBackground (UIApplication application);
|
|
// +(void)FVapplicationDidBecomeActive:(UIApplication *)application;
|
[Static]
|
[Export ("FVapplicationDidBecomeActive:")]
|
void FVapplicationDidBecomeActive (UIApplication application);
|
}
|
|
}
|
|
namespace video
|
{
|
using Foundation;
|
using ObjCRuntime;
|
// @interface FV : NSObject
|
[BaseType (typeof (NSObject))]
|
interface FV
|
{
|
// +(void)FVloginWithAccount:(NSString *)Account Password:(NSString *)Password Company:(int)Company;
|
[Static]
|
[Export ("FVloginWithAccount:Password:Company:")]
|
void FVloginWithAccount (string Account, string Password, int Company);
|
|
// +(BOOL)FVapplication:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
|
[Static]
|
[Export ("FVapplication:didFinishLaunchingWithOptions:")]
|
bool FVapplication (UIApplication application, NSDictionary launchOptions);
|
|
// +(void)FVapplicationWillResignActive:(UIApplication *)application;
|
[Static]
|
[Export ("FVapplicationWillResignActive:")]
|
void FVapplicationWillResignActive (UIApplication application);
|
|
// +(void)FVapplicationDidEnterBackground:(UIApplication *)application;
|
[Static]
|
[Export ("FVapplicationDidEnterBackground:")]
|
void FVapplicationDidEnterBackground (UIApplication application);
|
|
// +(void)FVapplicationDidBecomeActive:(UIApplication *)application;
|
[Static]
|
[Export ("FVapplicationDidBecomeActive:")]
|
void FVapplicationDidBecomeActive (UIApplication application);
|
}
|
|
}
|
|
namespace EZMonitor
|
{
|
using Foundation;
|
using ObjCRuntime;
|
using Com.Hdl.ON;
|
|
// @interface DeviceInfo : NSObject
|
[BaseType (typeof (NSObject))]
|
interface DeviceInfo
|
{
|
// @property (nonatomic, strong) NSString * DeviceName;
|
[Export ("DeviceName", ArgumentSemantic.Strong)]
|
string DeviceName { get; set; }
|
|
// @property (nonatomic, strong) NSString * DeviceSerial;
|
[Export ("DeviceSerial", ArgumentSemantic.Strong)]
|
string DeviceSerial { get; set; }
|
|
// @property (assign, nonatomic) int DeviceNum;
|
[Export ("DeviceNum")]
|
int DeviceNum { get; set; }
|
|
// @property (assign, nonatomic) int DeviceCameraInfoListSize;
|
[Export ("DeviceCameraInfoListSize")]
|
int DeviceCameraInfoListSize { get; set; }
|
|
// @property (nonatomic, strong) NSObject * RealObject;
|
[Export ("RealObject", ArgumentSemantic.Strong)]
|
NSObject RealObject { get; set; }
|
|
// @property (nonatomic, strong) NSArray * cameraInfo;
|
[Export ("cameraInfo", ArgumentSemantic.Strong)]
|
//[Verify (StronglyTypedNSArray)]
|
NSObject [] CameraInfo { get; set; }
|
}
|
|
// @interface Ezviz : NSObject
|
[BaseType (typeof (NSObject))]
|
interface Ezviz
|
{
|
|
// +(void)libInit;
|
[Static]
|
[Export ("libInit")]
|
void LibInit ();
|
|
[Static]
|
[Export ("readPath:")]
|
void ReadPath (string path);
|
|
}
|
|
|
|
}
|
|
|
namespace Com.Hdl.ON
|
{
|
|
using Foundation;
|
using ObjCRuntime;
|
//using Com.Hdl.ON;
|
|
|
// @interface CommonList : NSObject
|
[BaseType (typeof (NSObject))]
|
interface CommonList
|
{
|
|
// +(void)MonitorPushMessage:(NSString *)MonitorType ID:(NSString *)ID;
|
[Static]
|
[Export ("MonitorPushMessage:ID:")]
|
void MonitorPushMessage (string MonitorType, string ID);
|
|
[Static]
|
[Export ("CameraList")]
|
void CameraList ();
|
|
//// +(NSMutableDictionary *)getMonitorDatas;
|
//[Static]
|
//[Export ("getMonitorDatas")]
|
////[Verify (MethodToProperty)]
|
//NSMutableArray MonitorScenePathList ();
|
|
// +(NSMutableArray<MonitorData *> *)getMonitorDatas;
|
[Static]
|
[Export ("getMonitorDatas")]
|
//[Verify (MethodToProperty)]
|
NSMutableArray monitorScenePathList { get; }
|
|
// +(ICommon *)EZGetICommon;
|
[Static]
|
[Export ("EZICommon")]
|
//[Verify (MethodToProperty)]
|
ICommon EZICommon ();
|
|
// +(NSArray *)getDeviceList:(int)pageIndex :(int)pageSize;
|
[Static]
|
[Export ("getDeviceList::")]
|
//[Verify (StronglyTypedNSArray)]
|
EZMonitor.DeviceInfo [] GetDeviceList (int pageIndex, int pageSize);
|
|
// +(void)addEzvizMonitor;
|
[Static]
|
[Export ("addEzvizMonitor")]
|
void AddEzvizMonitor ();
|
|
// +(void)Play:(NSObject *)deviceInfo;
|
[Static]
|
[Export ("Play:")]
|
void Play (NSObject deviceInfo);
|
|
// +(void)setting:(NSObject *)deviceInfo;
|
[Static]
|
[Export ("setting:")]
|
void Setting (NSObject deviceInfo);
|
|
// +(void)playBackVideo:(NSObject *)deviceInfo;
|
[Static]
|
[Export ("playBackVideo:")]
|
void PlayBackVideo (NSObject deviceInfo);
|
|
//go2EZvizMonitor
|
[Static]
|
[Export ("go2EZvizMonitor")]
|
void Go2EZvizMonitor ();
|
|
//login
|
[Static]
|
[Export ("login")]
|
void login ();
|
}
|
// @interface MonitorData : NSObject
|
|
|
// typedef void (^dd)(MonitorData *);
|
delegate void dd (MonitorData arg0);
|
|
// @interface ICommon : NSObject
|
[BaseType (typeof (NSObject))]
|
interface ICommon
|
{
|
// @property (copy, nonatomic) dd MonitorInfoChanged;
|
[Export ("MonitorSceneData", ArgumentSemantic.Copy)]
|
dd MonitorSceneData { get; set; }
|
|
[Export ("ControlMonitorScene", ArgumentSemantic.Copy)]
|
dd ControlMonitorScene { get; set; }
|
|
|
}
|
|
[BaseType (typeof (NSObject))]
|
interface MonitorData
|
{
|
// @property (nonatomic, strong) NSString * Remark;
|
[Export ("Remark", ArgumentSemantic.Strong)]
|
string Remark { get; set; }
|
|
// @property (nonatomic, strong) NSString * ControlType;
|
[Export ("ControlType", ArgumentSemantic.Strong)]
|
string ControlType { get; set; }
|
|
// @property (nonatomic, strong) NSString * SelectedImagePath;
|
[Export ("SelectedImagePath", ArgumentSemantic.Strong)]
|
string SelectedImagePath { get; set; }
|
|
// @property (nonatomic, strong) NSString * ImagePath;
|
[Export ("ImagePath", ArgumentSemantic.Strong)]
|
string ImagePath { get; set; }
|
|
// @property (nonatomic, strong) NSString * FileName;
|
[Export ("FileName", ArgumentSemantic.Strong)]
|
string FileName { get; set; }
|
|
// @property (nonatomic, strong) NSString * Type;
|
[Export ("Type", ArgumentSemantic.Strong)]
|
string Type { get; set; }
|
|
// @property (nonatomic, strong) NSString * ID;
|
[Export ("ID", ArgumentSemantic.Strong)]
|
string Id { get; set; }
|
}
|
|
|
|
// The first step to creating a binding is to add your native library ("libNativeLibrary.a")
|
// to the project by right-clicking (or Control-clicking) the folder containing this source
|
// file and clicking "Add files..." and then simply select the native library (or libraries)
|
// that you want to bind.
|
//
|
// When you do that, you'll notice that MonoDevelop generates a code-behind file for each
|
// native library which will contain a [LinkWith] attribute. MonoDevelop auto-detects the
|
// architectures that the native library supports and fills in that information for you,
|
// however, it cannot auto-detect any Frameworks or other system libraries that the
|
// native library may depend on, so you'll need to fill in that information yourself.
|
//
|
// Once you've done that, you're ready to move on to binding the API...
|
//
|
//
|
// Here is where you'd define your API definition for the native Objective-C library.
|
//
|
// For example, to bind the following Objective-C class:
|
//
|
// @interface Widget : NSObject {
|
// }
|
//
|
// The C# binding would look like this:
|
//
|
// [BaseType (typeof (NSObject))]
|
// interface Widget {
|
// }
|
//
|
// To bind Objective-C properties, such as:
|
//
|
// @property (nonatomic, readwrite, assign) CGPoint center;
|
//
|
// You would add a property definition in the C# interface like so:
|
//
|
// [Export ("center")]
|
// CGPoint Center { get; set; }
|
//
|
// To bind an Objective-C method, such as:
|
//
|
// -(void) doSomething:(NSObject *)object atIndex:(NSInteger)index;
|
//
|
// You would add a method definition to the C# interface like so:
|
//
|
// [Export ("doSomething:atIndex:")]
|
// void DoSomething (NSObject object, int index);
|
//
|
// Objective-C "constructors" such as:
|
//
|
// -(id)initWithElmo:(ElmoMuppet *)elmo;
|
//
|
// Can be bound as:
|
//
|
// [Export ("initWithElmo:")]
|
// IntPtr Constructor (ElmoMuppet elmo);
|
//
|
// For more information, see http://developer.xamarin.com/guides/ios/advanced_topics/binding_objective-c/
|
//
|
}
|