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

◆ main()

raster2pgsql.main ( )

Definition at line 955 of file raster2pgsql.py.

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