@@ -160,7 +160,7 @@ NAN_METHOD(Mat::New) {
160
160
/* data array, type */
161
161
else if (info.Length () == 2 && info[0 ]->IsArray () && info[1 ]->IsInt32 ()) {
162
162
FF_ARR rowArray = FF_ARR::Cast (info[0 ]);
163
- int type = info[1 ]->Int32Value ();
163
+ int type = info[1 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value ();
164
164
165
165
long numCols = -1 ;
166
166
for (uint i = 0 ; i < rowArray->Length (); i++) {
@@ -180,8 +180,8 @@ NAN_METHOD(Mat::New) {
180
180
}
181
181
/* row, col, type */
182
182
else if (info[0 ]->IsNumber () && info[1 ]->IsNumber () && info[2 ]->IsInt32 ()) {
183
- int type = info[2 ]->Int32Value ();
184
- cv::Mat mat (info[0 ]->Int32Value () , info[1 ]->Int32Value (), type);
183
+ int type = info[2 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value ();
184
+ cv::Mat mat (info[0 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value () , info[1 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value (), type);
185
185
/* fill vector */
186
186
// TODO by Vec
187
187
if (info[3 ]->IsArray ()) {
@@ -201,9 +201,9 @@ NAN_METHOD(Mat::New) {
201
201
}
202
202
/* raw data, row, col, type */
203
203
else if (info.Length () == 4 && info[1 ]->IsNumber () && info[2 ]->IsNumber () && info[3 ]->IsInt32 ()) {
204
- int type = info[3 ]->Int32Value ();
205
- char *data = static_cast <char *>(node::Buffer::Data (info[0 ]->ToObject ()));
206
- cv::Mat mat (info[1 ]->Int32Value () , info[2 ]->Int32Value (), type);
204
+ int type = info[3 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value ();
205
+ char *data = static_cast <char *>(node::Buffer::Data (info[0 ]->ToObject (Nan::GetCurrentContext ()). ToLocalChecked ( )));
206
+ cv::Mat mat (info[1 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value () , info[2 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value (), type);
207
207
size_t size = mat.rows * mat.cols * mat.elemSize ();
208
208
memcpy (mat.data , data, size);
209
209
self->setNativeProps (mat);
@@ -251,8 +251,8 @@ NAN_METHOD(Mat::At) {
251
251
}
252
252
FF_MAT_APPLY_TYPED_OPERATOR (matSelf, val, matSelf.type (), FF_MAT_AT_ARRAY, FF::matGet);
253
253
} else {
254
- FF_ASSERT_INDEX_RANGE (info[0 ]->Int32Value (), matSelf.size [0 ] - 1 , " Mat::At row" );
255
- FF_ASSERT_INDEX_RANGE (info[1 ]->Int32Value (), matSelf.size [1 ] - 1 , " Mat::At col" );
254
+ FF_ASSERT_INDEX_RANGE (info[0 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value (), matSelf.size [0 ] - 1 , " Mat::At row" );
255
+ FF_ASSERT_INDEX_RANGE (info[1 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value (), matSelf.size [1 ] - 1 , " Mat::At col" );
256
256
FF_MAT_APPLY_TYPED_OPERATOR (matSelf, val, matSelf.type (), FF_MAT_AT, FF::matGet);
257
257
}
258
258
@@ -261,15 +261,15 @@ NAN_METHOD(Mat::At) {
261
261
FF_OBJ jsVec;
262
262
if (vec->Length () == 2 ) {
263
263
jsVec = FF_NEW_INSTANCE (Vec2::constructor);
264
- FF_UNWRAP_VEC2 (jsVec)->vec = cv::Vec2d (vec->Get (0 )->NumberValue () , vec->Get (1 )->NumberValue ());
264
+ FF_UNWRAP_VEC2 (jsVec)->vec = cv::Vec2d (vec->Get (0 )->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value () , vec->Get (1 )->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value ());
265
265
}
266
266
else if (vec->Length () == 3 ) {
267
267
jsVec = FF_NEW_INSTANCE (Vec3::constructor);
268
- FF_UNWRAP_VEC3 (jsVec)->vec = cv::Vec3d (vec->Get (0 )->NumberValue () , vec->Get (1 )->NumberValue () , vec->Get (2 )->NumberValue ());
268
+ FF_UNWRAP_VEC3 (jsVec)->vec = cv::Vec3d (vec->Get (0 )->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value () , vec->Get (1 )->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value () , vec->Get (2 )->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value ());
269
269
}
270
270
else {
271
271
jsVec = FF_NEW_INSTANCE (Vec4::constructor);
272
- FF_UNWRAP_VEC4 (jsVec)->vec = cv::Vec4d (vec->Get (0 )->NumberValue () , vec->Get (1 )->NumberValue () , vec->Get (2 )->NumberValue () , vec->Get (3 )->NumberValue ());
272
+ FF_UNWRAP_VEC4 (jsVec)->vec = cv::Vec4d (vec->Get (0 )->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value () , vec->Get (1 )->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value () , vec->Get (2 )->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value () , vec->Get (3 )->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value ());
273
273
}
274
274
jsVal = jsVec;
275
275
}
@@ -282,8 +282,8 @@ NAN_METHOD(Mat::At) {
282
282
NAN_METHOD (Mat::AtRaw) {
283
283
FF_METHOD_CONTEXT (" Mat::AtRaw" );
284
284
cv::Mat matSelf = FF_UNWRAP_MAT_AND_GET (info.This ());
285
- FF_ASSERT_INDEX_RANGE (info[0 ]->Int32Value (), matSelf.size [0 ] - 1 , " Mat::At row" );
286
- FF_ASSERT_INDEX_RANGE (info[1 ]->Int32Value (), matSelf.size [1 ] - 1 , " Mat::At col" );
285
+ FF_ASSERT_INDEX_RANGE (info[0 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value (), matSelf.size [0 ] - 1 , " Mat::At row" );
286
+ FF_ASSERT_INDEX_RANGE (info[1 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value (), matSelf.size [1 ] - 1 , " Mat::At col" );
287
287
v8::Local<v8::Value> val;
288
288
FF_MAT_APPLY_TYPED_OPERATOR (matSelf, val, matSelf.type (), FF_MAT_AT, FF::matGet);
289
289
FF_RETURN (val);
@@ -292,8 +292,8 @@ NAN_METHOD(Mat::AtRaw) {
292
292
NAN_METHOD (Mat::Set) {
293
293
FF_METHOD_CONTEXT (" Mat::Set" );
294
294
cv::Mat matSelf = FF_UNWRAP_MAT_AND_GET (info.This ());
295
- FF_ASSERT_INDEX_RANGE (info[0 ]->Int32Value (), matSelf.size [0 ] - 1 , " Mat::At row" );
296
- FF_ASSERT_INDEX_RANGE (info[1 ]->Int32Value (), matSelf.size [1 ] - 1 , " Mat::At col" );
295
+ FF_ASSERT_INDEX_RANGE (info[0 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value (), matSelf.size [0 ] - 1 , " Mat::At row" );
296
+ FF_ASSERT_INDEX_RANGE (info[1 ]->ToInt32 ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value (), matSelf.size [1 ] - 1 , " Mat::At col" );
297
297
298
298
int cn = matSelf.channels ();
299
299
if (info[2 ]->IsArray ()) {
@@ -303,15 +303,15 @@ NAN_METHOD(Mat::Set) {
303
303
}
304
304
else if (FF_IS_INSTANCE (Vec2::constructor, info[2 ])) {
305
305
FF_ASSERT_CHANNELS (cn, 2 , " Mat::Set" );
306
- FF_MAT_APPLY_TYPED_OPERATOR (matSelf, FF::vecToJsArr<2 >(FF_UNWRAP_VEC2_AND_GET (info[2 ]->ToObject ())), matSelf.type (), FF_MAT_SET, FF::matPut);
306
+ FF_MAT_APPLY_TYPED_OPERATOR (matSelf, FF::vecToJsArr<2 >(FF_UNWRAP_VEC2_AND_GET (info[2 ]->ToObject (Nan::GetCurrentContext ()). ToLocalChecked ( ))), matSelf.type (), FF_MAT_SET, FF::matPut);
307
307
}
308
308
else if (FF_IS_INSTANCE (Vec3::constructor, info[2 ])) {
309
309
FF_ASSERT_CHANNELS (cn, 3 , " Mat::Set" );
310
- FF_MAT_APPLY_TYPED_OPERATOR (matSelf, FF::vecToJsArr<3 >(FF_UNWRAP_VEC3_AND_GET (info[2 ]->ToObject ())), matSelf.type (), FF_MAT_SET, FF::matPut);
310
+ FF_MAT_APPLY_TYPED_OPERATOR (matSelf, FF::vecToJsArr<3 >(FF_UNWRAP_VEC3_AND_GET (info[2 ]->ToObject (Nan::GetCurrentContext ()). ToLocalChecked ( ))), matSelf.type (), FF_MAT_SET, FF::matPut);
311
311
}
312
312
else if (FF_IS_INSTANCE (Vec4::constructor, info[2 ])) {
313
313
FF_ASSERT_CHANNELS (cn, 4 , " Mat::Set" );
314
- FF_MAT_APPLY_TYPED_OPERATOR (matSelf, FF::vecToJsArr<4 >(FF_UNWRAP_VEC4_AND_GET (info[2 ]->ToObject ())), matSelf.type (), FF_MAT_SET, FF::matPut);
314
+ FF_MAT_APPLY_TYPED_OPERATOR (matSelf, FF::vecToJsArr<4 >(FF_UNWRAP_VEC4_AND_GET (info[2 ]->ToObject (Nan::GetCurrentContext ()). ToLocalChecked ( ))), matSelf.type (), FF_MAT_SET, FF::matPut);
315
315
}
316
316
else if (info[2 ]->IsNumber ()) {
317
317
FF_MAT_APPLY_TYPED_OPERATOR (matSelf, info[2 ], matSelf.type (), FF_MAT_SET, FF::matPut);
@@ -352,7 +352,7 @@ NAN_METHOD(Mat::GetRegion) {
352
352
if (!FF_IS_INSTANCE (Rect ::constructor, info[0 ])) {
353
353
return Nan::ThrowError (" Mat::GetRegion expected arg0 to be an instance of Rect" );
354
354
}
355
- cv::Rect2d rect = FF_UNWRAP (info[0 ]->ToObject (), Rect )->rect ;
355
+ cv::Rect2d rect = FF_UNWRAP (info[0 ]->ToObject (Nan::GetCurrentContext ()). ToLocalChecked ( ), Rect )->rect ;
356
356
FF_OBJ jsRegion = FF_NEW_INSTANCE (constructor);
357
357
FF_UNWRAP_MAT_AND_GET (jsRegion) = FF_UNWRAP_MAT_AND_GET (info.This ())(rect);
358
358
FF_RETURN (jsRegion);
@@ -367,7 +367,7 @@ NAN_METHOD(Mat::Norm) {
367
367
368
368
// optional args
369
369
bool hasOptArgsObj = FF_HAS_ARG ((long )i) && info[i]->IsObject ();
370
- FF_OBJ optArgs = hasOptArgsObj ? info[i]->ToObject () : FF_NEW_OBJ ();
370
+ FF_OBJ optArgs = hasOptArgsObj ? info[i]->ToObject (Nan::GetCurrentContext ()). ToLocalChecked ( ) : FF_NEW_OBJ ();
371
371
FF_GET_UINT_IFDEF (optArgs, uint normType, " normType" , cv::NORM_L2);
372
372
FF_GET_INSTANCE_IFDEF (optArgs, cv::Mat mask, " mask" , Mat::constructor, FF_UNWRAP_MAT_AND_GET, Mat, cv::noArray ().getMat ());
373
373
if (!hasOptArgsObj) {
@@ -390,7 +390,7 @@ NAN_METHOD(Mat::Normalize) {
390
390
391
391
// optional args
392
392
bool hasOptArgsObj = FF_HAS_ARG (0 ) && info[0 ]->IsObject ();
393
- FF_OBJ optArgs = hasOptArgsObj ? info[0 ]->ToObject () : FF_NEW_OBJ ();
393
+ FF_OBJ optArgs = hasOptArgsObj ? info[0 ]->ToObject (Nan::GetCurrentContext ()). ToLocalChecked ( ) : FF_NEW_OBJ ();
394
394
FF_GET_NUMBER_IFDEF (optArgs, double alpha, " alpha" , 1.0 );
395
395
FF_GET_NUMBER_IFDEF (optArgs, double beta, " beta" , 0.0 );
396
396
FF_GET_UINT_IFDEF (optArgs, uint normType, " normType" , cv::NORM_L2);
@@ -413,7 +413,7 @@ NAN_METHOD(Mat::Row) {
413
413
if (!info[0 ]->IsNumber ()) {
414
414
return Nan::ThrowError (" usage: row(int r)" );
415
415
}
416
- int r = (int )info[0 ]->NumberValue ();
416
+ int r = (int )info[0 ]->ToNumber ( Nan::GetCurrentContext ()). ToLocalChecked ()-> Value ();
417
417
cv::Mat mat = Nan::ObjectWrap::Unwrap<Mat>(info.This ())->mat ;
418
418
FF_ARR row = FF_NEW_ARRAY (mat.cols );
419
419
try {
0 commit comments