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

Reply via email to