Matrix operator() buig fix
This commit is contained in:
@@ -671,6 +671,13 @@ namespace Aurora {
|
||||
allDimIndex.push_back(j);
|
||||
}
|
||||
}
|
||||
if (isScalar()){
|
||||
mode = 0;
|
||||
}
|
||||
if (isVector()){
|
||||
if (getDimSize(0)>1 && aRowIdx!=$) mode = 0;
|
||||
if (getDimSize(1)>1 && aColIdx!=$) mode = 0;
|
||||
}
|
||||
int rowStride = 1;
|
||||
int colStride = getDimSize(0);
|
||||
int sliceStride = getDimSize(0)*getDimSize(1);
|
||||
@@ -1157,6 +1164,10 @@ namespace Aurora {
|
||||
std::cerr <<"Assign value fail!Src slice(dim 2 size:"<< matrix.getDimSize(1) <<"), not match of des(dim 2 size:"<<mSize2<<")!";
|
||||
return *this;
|
||||
}
|
||||
if (matrix.getDimSize(0)!=mSize) {
|
||||
std::cerr <<"Assign value fail!Src matrix(dim 1 size:"<< matrix.getDimSize(0)<<"), not match of des(dim 1 size:"<<mSize<<")!";
|
||||
return *this;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 1:{
|
||||
@@ -1165,6 +1176,10 @@ namespace Aurora {
|
||||
std::cerr <<"Assign value fail!Src matrix(dims count:"<< matrix.getDims() <<"), not match of des(dims count:"<<mSliceMode<<")!";
|
||||
return *this;
|
||||
}
|
||||
if (matrix.getDimSize(0)!=mSize && matrix.getDimSize(1)!=mSize) {
|
||||
std::cerr <<"Assign value fail!Src matrix(dim 1 size:"<< matrix.getDimSize(0)<<"), not match of des(dim 1 size:"<<mSize<<")!";
|
||||
return *this;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 0:{
|
||||
@@ -1174,10 +1189,7 @@ namespace Aurora {
|
||||
}
|
||||
}
|
||||
}
|
||||
if (matrix.getDimSize(0)!=mSize) {
|
||||
std::cerr <<"Assign value fail!Src matrix(dim 1 size:"<< matrix.getDimSize(0)<<"), not match of des(dim 1 size:"<<mSize<<")!";
|
||||
return *this;
|
||||
}
|
||||
|
||||
if (matrix.getValueType()!=mType) {
|
||||
std::cerr <<"Assign value fail!Src slice(value type:"<< matrix.getValueType() <<"), not match of des(value type:"<<mType<<")!";
|
||||
return *this;
|
||||
|
||||
Reference in New Issue
Block a user