int NFCRecord::FindRowByColValue(const int nCol, const NFData& var, NFDataList& varResult) { if (!ValidCol(nCol)) { return -1; } NFDATA_TYPE eType = var.GetType(); if (eType != mVarRecordType->Type(nCol)) { return -1; } switch (eType) { case TDATA_INT: return FindInt(nCol, var.GetInt(), varResult); break; case TDATA_FLOAT: return FindFloat(nCol, var.GetFloat(), varResult); break; case TDATA_STRING: return FindString(nCol, var.GetString(), varResult); break; case TDATA_OBJECT: return FindObject(nCol, var.GetObject(), varResult); break; case TDATA_VECTOR2: return FindVector2(nCol, var.GetVector2(), varResult); break; case TDATA_VECTOR3: return FindVector3(nCol, var.GetVector3(), varResult); break; default: break; } return -1; }