Changeset: 8c41d03c6cd9 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8c41d03c6cd9
Modified Files:
sql/backends/monet5/vaults/lidar/lidar.c
Branch: data-vaults
Log Message:
[LiDAR Vault]: Handle format versions
The LiDAR header contains a major and a minor version. liblas returns these as
unsigned chars (i.e. possible values 0-255). We should store them in an column
with integer type. Since SQL does not allow for unsigned types, the smallest
type that can handle the values 0-255 is SMALLINT.
diffs (36 lines):
diff --git a/sql/backends/monet5/vaults/lidar/lidar.c
b/sql/backends/monet5/vaults/lidar/lidar.c
--- a/sql/backends/monet5/vaults/lidar/lidar.c
+++ b/sql/backends/monet5/vaults/lidar/lidar.c
@@ -223,8 +223,8 @@ LIDARinitCatalog(mvc *m)
mvc_create_column_(m, lidar_tbl, "file_id", "int", 32);
mvc_create_column_(m, lidar_tbl, "name", "varchar", 255);
mvc_create_column_(m, lidar_tbl, "FileSourceId", "int", 32);
- mvc_create_column_(m, lidar_tbl, "VersionMajor", "char", 1);
- mvc_create_column_(m, lidar_tbl, "VersionMinor", "char", 1);
+ mvc_create_column_(m, lidar_tbl, "VersionMajor", "int", 16);
+ mvc_create_column_(m, lidar_tbl, "VersionMinor", "int", 16);
mvc_create_column_(m, lidar_tbl, "DataFormatId", "char", 1);
mvc_create_column_(m, lidar_tbl, "CreationDOY", "int", 32);
mvc_create_column_(m, lidar_tbl, "CreationYear", "int", 32);
@@ -620,7 +620,8 @@ str LIDARattach(Client cntxt, MalBlkPtr
int RecordsCount, PointRecordsCount, DataOffset;
int HeaderPadding, ByteSize, BaseByteSize, CreationDOY;
int CreationYear, Reserved, DataRecordLength, HeaderSize, FileSourceId;
- char VersionMajor, VersionMinor, DataFormatId;
+ int VersionMajor, VersionMinor;
+ char DataFormatId;
str WKT, WKT_CompoundOK, Proj4;
/* columns */
double ScaleX, ScaleY, ScaleZ, OffsetX, OffsetY, OffsetZ;
@@ -747,9 +748,9 @@ str LIDARattach(Client cntxt, MalBlkPtr
store_funcs.append_col(m->session->tr,
mvc_bind_column(m, lidar_tbl, "FileSourceId"),
&FileSourceId, TYPE_int);
store_funcs.append_col(m->session->tr,
- mvc_bind_column(m, lidar_tbl, "VersionMajor"),
&VersionMajor, TYPE_str);
+ mvc_bind_column(m,
lidar_tbl, "VersionMajor"), &VersionMajor, TYPE_int);
store_funcs.append_col(m->session->tr,
- mvc_bind_column(m, lidar_tbl, "VersionMinor"),
&VersionMinor, TYPE_str);
+ mvc_bind_column(m,
lidar_tbl, "VersionMinor"), &VersionMinor, TYPE_int);
store_funcs.append_col(m->session->tr,
mvc_bind_column(m, lidar_tbl, "DataFormatId"),
&DataFormatId, TYPE_str);
store_funcs.append_col(m->session->tr,
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list