PostGIS 3.7.0dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ main()

raster2pgsql.main ( void  )

Definition at line 963 of file raster2pgsql.py.

963def main():
964
965 (opts, args) = parse_command_line()
966
967 global VERBOSE
968 VERBOSE = opts.verbose
969
970 global SUMMARY
971 SUMMARY = []
972
973 saved_out = sys.stdout
974 if isinstance(opts.output, str):
975 filename = opts.output
976 opts.output = open(filename, "w")
977
978 # BEGIN
979 opts.output.write('BEGIN;\n')
980
981 # If overviews requested, CREATE TABLE raster_overviews
982 if opts.create_raster_overviews_table:
983 sql = make_sql_create_raster_overviews(opts)
984 opts.output.write(sql)
985
986 # Base raster schema
987 if opts.overview_level == 1:
988 # DROP TABLE
989 if opts.drop_table:
990 sql = make_sql_drop_raster_table(opts.table)
991 opts.output.write(sql)
992
993 # CREATE TABLE
994 if opts.create_table and opts.overview_level == 1:
995 sql = make_sql_create_table(opts)
996 opts.output.write(sql)
997
998 # INSERT
999 i = 0
1000
1001 # Burn all specified input raster files into single WKTRaster table
1002 gt = None
1003 for infile in opts.raster:
1004 filelist = glob.glob(infile)
1005 assert len(filelist) > 0, "No input raster files found for '" + str(infile) + "'"
1006
1007 for filename in filelist:
1008 logit("MSG: Dataset #%d: %s\n" % (i + 1, filename))
1009
1010 # Write raster data to WKB and send it to opts.output
1011 gt = wkblify_raster(opts, filename.replace( '\\', '/') , i, gt)
1012 i += 1
1013
1014 # INDEX
1015 if opts.index and SUMMARY is not None:
1016 sql = make_sql_create_gist(SUMMARY[0][0], opts.column)
1017 opts.output.write(sql)
1018
1019 # COMMIT
1020 opts.output.write('END;\n')
1021
1022 # VACUUM
1023 if opts.vacuum and SUMMARY is not None:
1024 sql = make_sql_vacuum(SUMMARY[0][0])
1025 opts.output.write(sql)
1026
1027 # Cleanup
1028 if opts.output != sys.stdout:
1029 sys.stdout = saved_out
1030
1031 print("------------------------------------------------------------")
1032 print(" Summary of GDAL to PostGIS Raster processing:")
1033 print("------------------------------------------------------------")
1034 if i == 1:
1035 m = '%d (%s)' % (i, infile)
1036 else:
1037 m = '%d' % i
1038 print("Number of processed raster files: " + m)
1039 print("List of generated tables (number of tiles):")
1040 i = 0
1041 for s in SUMMARY:
1042 i += 1
1043 print("%d\t%s (%d)" % (i, s[0], s[1]))
1044
#define str(s)
int main(void)