Skip to content

Commit

Permalink
Squashed commit of the following:
Browse files Browse the repository at this point in the history
commit a18a30e34d930d1d5b825d8b780d7244dbc120f0
Author: Dan Smith <[email protected]>
Date:   Tue Aug 31 12:21:30 2021 -0400

    latest from "nitro"

commit 0527a629b781bc0531c4b5c20456617317f272a5
Author: Dan Smith <[email protected]>
Date:   Tue Aug 31 12:20:12 2021 -0400

    latest from coda-oss

commit ee48c047678cad511d7a84f6a125f11deba88014
Merge: 1096f4fd5 6cff53db9
Author: Dan Smith <[email protected]>
Date:   Tue Aug 31 12:19:29 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 1096f4fd5e94a1dbbf52e5f368681d163d76ca6e
Author: Dan Smith <[email protected]>
Date:   Wed Aug 25 14:17:33 2021 -0400

    latest from nitro and coda-oss

commit 73e77a8b4c84b0f6ffc11a524bf9c9e46e6e8172
Merge: 99ae196d3 ff3219eb1
Author: Dan Smith <[email protected]>
Date:   Wed Aug 25 14:01:46 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 99ae196d3861fb08a0785fe233679e4b61970186
Author: Dan Smith <[email protected]>
Date:   Wed Aug 25 12:17:41 2021 -0400

    account for NITRO changes

commit c57cd954272f55da042262f5c8d5e88ed15f72ce
Author: Dan Smith <[email protected]>
Date:   Wed Aug 25 11:55:35 2021 -0400

    latest from "nitro"

commit 9cd3c090116420237c9a948dbc2652d9eb044343
Author: Dan Smith <[email protected]>
Date:   Wed Aug 25 11:53:00 2021 -0400

    latest from coda-oss

commit 4c2b6526fb7f05bbeb9d7ace83254dcb0d991e50
Merge: 76a8924ef c13678637
Author: Dan Smith <[email protected]>
Date:   Wed Aug 25 11:25:15 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 76a8924efc427079a8593e6ccfa8242bb1e0defe
Author: Dan Smith <[email protected]>
Date:   Mon Aug 16 09:25:42 2021 -0400

    mem::ScopedArray<T> is now the same as std::unique_ptr<T[]>

commit 76a7a1768bfe1115d705085c3a9c4b8aa39c9e53
Author: Dan Smith <[email protected]>
Date:   Mon Aug 16 09:06:07 2021 -0400

    latest from coda-oss

commit bf3a4183d98778292b522b108af655b870f81f7c
Merge: 1b96c7c82 242b834f6
Author: Dan Smith <[email protected]>
Date:   Mon Aug 16 09:01:51 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 1b96c7c8266b8af0ab1879a7bd52598d4e04d4bf
Author: Dan Smith <[email protected]>
Date:   Wed Aug 11 11:10:19 2021 -0400

    latest from "nitro"

commit 7c3ab64208cfffa33eaa8c35f5f6296e542a23a8
Author: Dan Smith <[email protected]>
Date:   Wed Aug 11 11:05:52 2021 -0400

    latest from coda-oss

commit 06fae55d680fdac68314a7f7f3581babd8235911
Merge: da2932b21 1334638dd
Author: Dan Smith <[email protected]>
Date:   Wed Aug 11 11:00:38 2021 -0400

    Merge branch 'master' into develop/update_externals

commit da2932b21a7c2796aee659b598813643bbb7b72a
Author: Dan Smith <[email protected]>
Date:   Wed Aug 4 10:30:13 2021 -0400

    latest from "nitro"

commit de9ae8cc8df0e4fc09ad98f5a4c3845a8ee66e35
Author: Dan Smith <[email protected]>
Date:   Wed Aug 4 10:15:36 2021 -0400

    latest from coda-oss

commit 1b15d837462f2fab03a77e449602a55076a1358e
Merge: e219ad8c0 6fa3d44d9
Author: Dan Smith <[email protected]>
Date:   Wed Aug 4 10:13:22 2021 -0400

    Merge branch 'master' into develop/update_externals

commit e219ad8c0282ad9000cdf071089b979335ea79b6
Author: Dan Smith <[email protected]>
Date:   Wed Jun 23 10:54:34 2021 -0400

    latest from coda-oss

commit d9fd3dd57e54011053412c3109095ea7d3dbc0a7
Merge: 3681b8586 67830a063
Author: Dan Smith <[email protected]>
Date:   Wed Jun 23 10:51:23 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 3681b85865a306eebefe48584e00e1c4ca53f825
Author: Dan Smith <[email protected]>
Date:   Thu Jun 17 09:49:18 2021 -0400

    getCornersAsLatLons should be w/o "const"

commit 5ce71b5def4bea12737d3dcb6f8b3d8bcddb7868
Author: Dan Smith <[email protected]>
Date:   Thu Jun 17 09:39:41 2021 -0400

    latest from "nitro"

commit 86feacfc0317f86db863a1bc40250cf0acc3d6e9
Author: Dan Smith <[email protected]>
Date:   Thu Jun 17 09:37:44 2021 -0400

    latest from coda-oss

commit 0103074f0d1db84c55c01541571029f75feebfe9
Merge: f4c89c4e9 8ab030569
Author: Dan Smith <[email protected]>
Date:   Thu Jun 17 09:24:19 2021 -0400

    Merge branch 'master' into develop/update_externals

commit f4c89c4e950246ef7dc6ec307cc18104253c911a
Author: Dan Smith <[email protected]>
Date:   Thu Jun 10 16:29:14 2021 -0400

    latest from NITRO

commit aef4a229e7a3f7c977a2340aee6a80ab7856b098
Author: Dan Smith <[email protected]>
Date:   Thu Jun 10 16:26:48 2021 -0400

    latest from coda-oss

commit 10015fe2ab6a8f5a55a1d65583b393a471b3226c
Merge: 5a8c6a58b e708b980c
Author: Dan Smith <[email protected]>
Date:   Thu May 27 15:19:30 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 5a8c6a58b14a4a29bbfe685727f3bee45ee3c1c4
Author: Dan Smith <[email protected]>
Date:   Thu May 27 13:38:20 2021 -0400

    latest from nitro and coda-oss

commit 4b89b4f9c5f15dfe60dc1ecea7b2ccec15848f61
Author: Dan Smith <[email protected]>
Date:   Wed May 26 10:07:40 2021 -0400

    tweaks for VS2019 16.10

commit 9c998810bef6a3ca96e1aba25269101a4f5f6032
Merge: cc2d0548f 9390b614b
Author: Dan Smith <[email protected]>
Date:   Mon May 24 16:01:09 2021 -0400

    Merge branch 'master' into develop/update_externals

commit cc2d0548f00a61fd27235d309504b1817dac5889
Merge: dfb69caea 47301187b
Author: Dan Smith <[email protected]>
Date:   Mon May 24 15:17:39 2021 -0400

    Merge branch 'master' into develop/update_externals

commit dfb69caeae5cc9aefb710673d11e6bf62e675734
Author: Dan Smith <[email protected]>
Date:   Mon May 24 14:34:58 2021 -0400

    changes from coda-oss to reduce code-analysis diagnostics

commit 433aa81ca77f566c5e8ec61e30ab734e8244308f
Author: Dan Smith <[email protected]>
Date:   Wed May 19 16:03:14 2021 -0400

    reduce use of .c_str() in "nitro"

commit 6a294c9bb7a6d0e3b6749dace7304371dbe1824b
Merge: df166d5a2 8e10afb11
Author: Dan Smith <[email protected]>
Date:   Wed May 19 16:01:45 2021 -0400

    Merge branch 'master' into develop/update_externals

commit df166d5a2452aabb958ef5773d21097186a01a0d
Author: Dan Smith <[email protected]>
Date:   Mon May 17 11:10:13 2021 -0400

    latest from "nitro" and "coda-oss"

commit 0314b791e395dcce4f9e15b8a5b8087f0bca3b86
Merge: ef2d1fee0 50bbbb573
Author: Dan Smith <[email protected]>
Date:   Mon May 17 11:05:57 2021 -0400

    Merge branch 'master' into develop/update_externals

commit ef2d1fee0e8c0cba0cfe9e2b372431cc928e2599
Author: Dan Smith <[email protected]>
Date:   Tue May 11 10:41:21 2021 -0400

    build NITRO @ /W4

commit a4f624b985335b3633a5804e14b9819c293cf3a0
Author: Dan Smith <[email protected]>
Date:   Sat May 8 12:38:51 2021 -0400

    be sure NITRO validation changes don't break SIX unittests

commit 2bb3a4e4582046435e42cb53462598b824fc2685
Merge: 0591d37c0 76c1dc1dc
Author: Dan Smith <[email protected]>
Date:   Sat May 8 12:34:01 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 0591d37c0f46402a7b467f8d04c292426cb9d089
Author: Dan Smith <[email protected]>
Date:   Tue May 4 13:27:14 2021 -0400

    latest from coda-oss to get rid of more compiler warnings/code-analysis diagnostics

commit 5ace9f9bd05e17ba786a322574e4fbe53225c5f0
Author: Dan Smith <[email protected]>
Date:   Mon May 3 13:58:24 2021 -0400

    explicitly list SegmentMemorySource() overloads

commit f273b6d036a25fdf6899af195069ae88bedc1218
Author: Dan Smith <[email protected]>
Date:   Mon May 3 13:13:08 2021 -0400

    build w/o errors when nitf-c++ is a DLL

commit 9faad061720737c0abc35b33192280a3243740bc
Author: Dan Smith <[email protected]>
Date:   Mon May 3 11:45:13 2021 -0400

    latest from "nitro" to support nitf-c++ as a DLL/shared-library

commit f20557ace1f491f6597cf8f03ce873b0c494103e
Merge: 5df916362 27b8f6aa5
Author: Dan Smith <[email protected]>
Date:   Mon May 3 11:31:16 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 5df916362cec21608631c5d9ac0444ca1b6c339b
Author: Dan Smith <[email protected]>
Date:   Mon Apr 26 12:09:53 2021 -0400

    updates from "nitro"

commit dc070a143163f920e11f66768fded2876a1277af
Author: Dan Smith <[email protected]>
Date:   Mon Apr 26 12:07:44 2021 -0400

    latest from coda-oss

commit 733a255827f4c031ac654959189cd65358cecafb
Author: Dan Smith <[email protected]>
Date:   Tue Apr 20 10:01:43 2021 -0400

    latest from nitro

commit 0b2b871e26044cc9d4b3da4edd0df6fedc1145f9
Author: Dan Smith <[email protected]>
Date:   Tue Apr 20 09:55:06 2021 -0400

    latest from coda-oss and nitro

commit fc46c9fdec6b0f432e04d3507ed322e0c9a114d6
Author: Dan Smith <[email protected]>
Date:   Mon Apr 19 09:08:27 2021 -0400

    lost sys/Conf.h #include

commit 09ffddbee6c37573a96c7c81def4d673f9da0acf
Author: Dan Smith <[email protected]>
Date:   Mon Apr 19 08:36:41 2021 -0400

    updates from "nitro"

commit 24e1ee592c1979e0d91b92b715377356f03cedff
Author: Dan Smith <[email protected]>
Date:   Sat Apr 17 16:49:21 2021 -0400

    latest from coda-oss

commit 8e1527568ce9f6e6aeaeebea24eec59d7b627932
Author: Dan Smith <[email protected]>
Date:   Sat Apr 17 09:35:04 2021 -0400

    more code-analysis diagnostics fixes from coda-oss

commit 445cf74cd1348c5c9003bfbd9ef83e37659b4adf
Author: Dan Smith <[email protected]>
Date:   Wed Apr 14 16:29:00 2021 -0400

    latest from coda-oss to reduce compiler warnings

commit e70e2572e59c72a4520a1aa65cff4f8dd9333bc3
Author: Dan Smith <[email protected]>
Date:   Wed Apr 14 12:54:49 2021 -0400

    coda-oss updates to reduce compiler warnings/code-analysis diagnostics

commit d30e0ab68a96fb56df37c228afd317e1c68f4a2e
Author: Dan Smith <[email protected]>
Date:   Wed Apr 14 09:19:28 2021 -0400

    latest from coda-oss

commit 74491f15ab390f4a0372e14de3008bf3d850aece
Merge: 37b4a362b de6c5fae4
Author: Dan Smith <[email protected]>
Date:   Wed Apr 14 09:17:09 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 37b4a362b9577fc9c2b71027cf1f33f91676179e
Author: Dan Smith <[email protected]>
Date:   Tue Apr 13 17:39:49 2021 -0400

    another update to coda-oss to get rid of code-analysis diagnostics

commit 582f71ac9689ee028f99523cce4772c20102a709
Author: Dan Smith <[email protected]>
Date:   Tue Apr 13 09:02:51 2021 -0400

    updates from coda-oss to remove compiler warnings

commit 89898de7acf89ae37979a00fbb9d7b4ac5f395ec
Author: Dan Smith <[email protected]>
Date:   Tue Apr 6 11:38:10 2021 -0400

    tweaks to python wrappers from coda-oss

commit 6c8bb000dcddbc7a8327c9c26da1a18cbadc2f5d
Merge: c77366127 1a7f2f328
Author: Dan Smith <[email protected]>
Date:   Tue Apr 6 11:34:07 2021 -0400

    Merge branch 'master' into develop/update_externals

commit c77366127448c8d9ca8c1a12d79df31707c8db19
Author: Dan Smith <[email protected]>
Date:   Mon Apr 5 10:26:53 2021 -0400

    latest from "coda-oss" and "nitro"

commit 7cd31db3f438ae1ccf660a1847f02c1eff81c58e
Merge: 0319e7076 4ea37a20f
Author: Dan Smith <[email protected]>
Date:   Sat Apr 3 10:45:52 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 0319e7076ced45d3febf60cf3bc22d62a3ca3803
Merge: 1dfc03417 788e7846d
Author: Dan Smith <[email protected]>
Date:   Sat Mar 27 18:17:32 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 1dfc03417c3b2c52973a8c18c38ece0ecf763910
Author: Dan Smith <[email protected]>
Date:   Sat Mar 27 17:21:06 2021 -0400

    forgot to add new "coda_oss" directory

commit 78ec6f69a6f08f564fd98ab678c501e34117200e
Merge: f105c98ab a5910ffd2
Author: Dan Smith <[email protected]>
Date:   Sat Mar 27 17:00:53 2021 -0400

    Merge branch 'master' into develop/update_externals

commit f105c98ab9a54dc87efc7b266662b65c3e176007
Author: Dan Smith <[email protected]>
Date:   Sat Mar 27 16:54:27 2021 -0400

    add back coda_oss;;filesystem::path

commit f819681ee8fce3ca867ab037cd2cd7575d002ee9
Merge: ab1348f5e 664d2c219
Author: Dan Smith <[email protected]>
Date:   Sat Mar 27 14:03:46 2021 -0400

    Merge branch 'master' into develop/update_externals

commit ab1348f5e77b94f1a980c4b468b3bc4f89561625
Author: Dan Smith <[email protected]>
Date:   Sat Mar 27 13:27:42 2021 -0400

    account for removed coda-oss overloads

commit 1005fb00d4a1c8b2fa30f51c82798e4992f9e223
Author: Dan Smith <[email protected]>
Date:   Sat Mar 27 11:50:01 2021 -0400

    build using C++17 features

commit 899e6158a65262649190c0de909ea9c620176831
Author: Dan Smith <[email protected]>
Date:   Sat Mar 27 11:21:10 2021 -0400

    sys/Filesystem.h -> std/filesystem

commit 3d28513e4c9cd307891c65c43113616878eeefe8
Author: Dan Smith <[email protected]>
Date:   Wed Mar 24 15:56:56 2021 -0400

    WAF dependencies for "scene"

commit a22f195284c320b58c82272998d2d3d32715eb50
Author: Dan Smith <[email protected]>
Date:   Wed Mar 24 15:46:25 2021 -0400

    fix coda-oss unittest dependencies

commit a9d7356085e0d6c136f00711cf5828cc4fb7bade
Author: Dan Smith <[email protected]>
Date:   Wed Mar 24 15:27:35 2021 -0400

    latest from coda-oss

commit b00fab77e92c86b3b101536730870c46600cf578
Author: Dan Smith <[email protected]>
Date:   Wed Mar 24 12:38:50 2021 -0400

    updates from coda-oss and nitro

commit dfff3e6dec52734e23f075a65b0a8ed3569f58a0
Author: Dan Smith <[email protected]>
Date:   Wed Mar 24 12:01:36 2021 -0400

    more coda-oss changes

commit 30afeeac677873c24c72b53796a8768525786f9a
Author: Dan Smith <[email protected]>
Date:   Wed Mar 24 10:27:21 2021 -0400

    use new coda-oss "std" headers

commit fd1485f17608bf0fbfa6b5d9d567ec92298c11af
Author: Dan Smith <[email protected]>
Date:   Wed Mar 24 10:14:30 2021 -0400

    be sure coda-oss "std" files are copied

commit c1f2b328b7b8bc7dcd3dcbd41fd851dadb3a8a77
Author: Dan Smith <[email protected]>
Date:   Wed Mar 24 10:02:23 2021 -0400

    update coda-oss and nitro

commit eeba5b8f0641d679eb895b0141aed17a52918653
Author: Dan Smith <[email protected]>
Date:   Wed Mar 24 08:08:18 2021 -0400

    CODA_OSS_AUGMENT_std_namespace got clobbered again

commit 77276c14a479d828b67b7df7d8ea96201a141449
Merge: 77b0b6545 7c1caf136
Author: Dan Smith <[email protected]>
Date:   Mon Mar 22 13:43:24 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 77b0b6545a3dfd2cd0a8457a65a5d2030243ed7b
Author: Dan Smith <[email protected]>
Date:   Mon Mar 22 12:45:37 2021 -0400

    remove CA diagnostics from coda-oss

commit cdb74ed4757559d701140a41d7d4c216c339fea6
Merge: 5aa2efba1 0cee4292b
Author: Dan Smith <[email protected]>
Date:   Mon Mar 22 11:47:37 2021 -0400

    Merge branch 'master' into develop/update_externals

commit 5aa2efba19373c06fd94501d2f83a687f71951b7
Author: Dan Smith <[email protected]>
Date:   Mon Mar 22 09:34:04 2021 -0400

    latest from "master" at nitro

commit 4db1a4be74299cece5953c6c3299203a26fd9cb8
Author: Dan Smith <[email protected]>
Date:   Mon Mar 22 09:28:46 2021 -0400

    latest from "master" on coda-oss

commit cc369cc01fb09490707ebb64a72edc9d45dbe08c
Merge: a22422ae0 9be2a2af8
Author: Dan Smith <[email protected]>
Date:   Mon Mar 22 09:26:16 2021 -0400

    Merge branch 'master' into develop/update_externals

commit a22422ae0eed2d7b393caad717b3a17592ee27e1
Author: Dan Smith <[email protected]>
Date:   Tue Mar 16 18:50:11 2021 -0400

    latest from coda-oss

commit a0206cf1812822e6e8aeb2982c81075f171fa608
Merge: 2d5f38dd1 64130a79c
Author: Dan Smith <[email protected]>
Date:   Mon Mar 8 10:32:12 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 2d5f38dd15beb538a325b0e7068704943db36eb9
Author: Dan Smith <[email protected]>
Date:   Mon Mar 8 09:05:30 2021 -0500

    missing "build" files

commit 9825b7da00cc69652360aeb53bc2a7be199677b6
Author: Dan Smith <[email protected]>
Date:   Mon Mar 8 09:03:30 2021 -0500

    missing .cmake files

commit f84a172af6e75e242de665a4d648c01fbae0597f
Author: Dan Smith <[email protected]>
Date:   Mon Mar 8 08:42:59 2021 -0500

    version number is in too many places ...

commit b69e63ab7e39b962e6ace387bc3d7cc311234792
Author: Dan Smith <[email protected]>
Date:   Mon Mar 8 08:40:46 2021 -0500

    finish rename

commit 5283b310f891b06300ddb2580f666bceffd4767b
Author: Dan Smith <[email protected]>
Date:   Mon Mar 8 08:35:46 2021 -0500

    remove version numbers (for now); we've went a very long time w/o them

commit abe6a561d8a0e4de214bb7ddaffcf98ea1cd3f68
Author: Dan Smith <[email protected]>
Date:   Sat Mar 6 17:13:46 2021 -0500

    update CMS to 3.0.3.3 (https://github.com/ngageoint/six-library/issues/433)

commit f4e67deff2e978687ab41daf65c7c1ca221af7b1
Merge: 2b4e00a9e fcd89c652
Author: Dan Smith <[email protected]>
Date:   Sat Mar 6 16:54:07 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 2b4e00a9e12e820c356c99e43ec80700c104601f
Author: Dan Smith <[email protected]>
Date:   Sat Mar 6 15:49:05 2021 -0500

    Gsl_.h got lost ... ?

commit 25cd85e1d090a0f33ba2b683541bdc4aff258bb7
Author: Dan Smith <[email protected]>
Date:   Sat Mar 6 15:41:11 2021 -0500

    restore "build" and "cmake"

commit a675370deb50da8f7247159e9024bff9ac383e79
Author: Dan Smith <[email protected]>
Date:   Sat Mar 6 15:30:56 2021 -0500

    add a version number to externals/nitro

commit cb99d69acfd296878fbacde04926aed36c8e42eb
Author: Dan Smith <[email protected]>
Date:   Sat Mar 6 15:23:19 2021 -0500

    add a version number to externals/coda-oss

commit 9f26eedc7057adf47d925837b8d2d9a927b33147
Merge: 5dcd930c6 cf6f419e9
Author: Dan Smith <[email protected]>
Date:   Sat Mar 6 14:56:43 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 5dcd930c60f9c9c461db66d1d3f3eb2156494839
Author: Dan Smith <[email protected]>
Date:   Tue Mar 2 12:35:28 2021 -0500

    latest from "nitro"

commit 07ba711ffdeb4a3b7c465c6c4611607147e9e0fd
Author: Dan Smith <[email protected]>
Date:   Tue Mar 2 12:32:36 2021 -0500

    latest from coda_oss

commit af2417e3e73596bf749236122882e31650dfcdb8
Merge: 241b4f532 6b8265118
Author: Dan Smith <[email protected]>
Date:   Tue Mar 2 12:26:07 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 241b4f532c77b074a2c4e593bf7ba98dc8b9504a
Merge: 6dfeb8599 e662ccae4
Author: Dan Smith <[email protected]>
Date:   Tue Feb 23 16:22:58 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 6dfeb8599b9dfc6803e87401445d9413dce55395
Author: Dan Smith <[email protected]>
Date:   Tue Feb 23 16:22:25 2021 -0500

    SWIG doesn't like "final"

commit f64bd7191b6426b181b654b81488c33745147b31
Author: Dan Smith <[email protected]>
Date:   Tue Feb 23 15:17:06 2021 -0500

    SWIG doesn't like "final"

commit 9bc5b4c96b4b29ad86da636735b16029ca154e6f
Merge: 93d681486 8c469b58e
Author: Dan Smith <[email protected]>
Date:   Tue Feb 23 15:15:32 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 93d681486e8cb2fd5fa2b9a4010ed26becfa8509
Merge: 805b4fd0c e846b9490
Author: Dan Smith <[email protected]>
Date:   Mon Feb 15 15:04:16 2021 -0500

    Merge branch 'develop/update_externals' of github.com:ngageoint/six-library into develop/update_externals

commit e846b949095117a7d9c156277db65d00d921a9bb
Author: Dan Smith <[email protected]>
Date:   Mon Feb 15 15:02:32 2021 -0500

    Update .gitignore from "nitro"

commit 0c8be8ebc0ad2acd6c796594328d4be90285d71c
Author: Dan Smith <[email protected]>
Date:   Mon Feb 15 14:57:56 2021 -0500

    latest coda-oss changes

commit 67b566658adc2d024615049e8604b54a5de8d0f8
Merge: 5d113a48b 1327e071a
Author: Dan Smith <[email protected]>
Date:   Mon Feb 15 14:52:16 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 5d113a48b8b5966010d0f7ff73b529208162c770
Author: Dan Smith <[email protected]>
Date:   Wed Feb 10 08:51:32 2021 -0500

    build with older compilers

commit 969cd6f6ea1ce23cdf5349f95d9b5bfc32f18926
Author: Dan Smith <[email protected]>
Date:   Tue Feb 9 18:29:07 2021 -0500

    std::shared_ptr<> doesn't have [] versions, only std::unique_ptr

commit 00b6e23eee97a203b5fe87cda1c50f6760f7c5e5
Author: Dan Smith <[email protected]>
Date:   Tue Feb 9 17:50:12 2021 -0500

    new TREs from "nitro"

commit c2a990976efd65a857f1e67a46ab1de40314b884
Author: Dan Smith <[email protected]>
Date:   Tue Feb 9 17:40:02 2021 -0500

    old C++11 compilers don't like template<template>

commit 98df1ed3947898603f9203fa464824721154affd
Author: Dan Smith <[email protected]>
Date:   Tue Feb 9 16:06:31 2021 -0500

    "nitro" changes to build with C90 instead of C99

commit 9ef79c0a47120cf680ca3c9a3bbbd0f60da8bbfe
Merge: 92ab24a96 5febd8eae
Author: Dan Smith <[email protected]>
Date:   Tue Feb 9 14:19:43 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 92ab24a9656e2b02c1ab9445fb97149736fb292d
Author: Dan Smith <[email protected]>
Date:   Tue Feb 9 13:52:55 2021 -0500

    one more change from coda-oss

commit ee7b56324d5c6c49344ed191f7ec296ab43a773c
Author: Dan Smith <[email protected]>
Date:   Tue Feb 9 13:47:25 2021 -0500

    latest from coda-oss

commit a181f348022d7856f56873eda0fbf5d7e3bfcabb
Merge: f616a8e62 f7a1c034e
Author: Dan Smith <[email protected]>
Date:   Tue Feb 9 13:33:16 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 805b4fd0c75f3a79bd38bd5755c771092d60ba7b
Merge: f616a8e62 4b30e4a09
Author: Dan Smith <[email protected]>
Date:   Tue Feb 2 13:35:08 2021 -0500

    Merge branch 'master' into develop/update_externals

commit f616a8e623c2784dc46c5e672525a3269538a134
Author: Dan Smith <[email protected]>
Date:   Mon Feb 1 14:35:41 2021 -0500

    latest from "coda-oss" and "nitro"

commit 42c63d0a153a27c5e5fd073c5c07a4e4036201c2
Merge: 6ba97c649 1f671bb17
Author: Dan Smith <[email protected]>
Date:   Mon Feb 1 11:41:32 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 6ba97c6499be41a1f7d8e3bebaba0f06520a583d
Author: Dan Smith <[email protected]>
Date:   Sat Jan 30 16:10:31 2021 -0500

    more place where an explicit std::filesystem::path::string() call is needed

commit 96918daf007397605a14914ae2645d98e0e0fec2
Author: Dan Smith <[email protected]>
Date:   Sat Jan 30 15:58:51 2021 -0500

    std::filesystem::path doesn't implicitly convert to std::string

commit f13785c7f22c21945cbcc82f04d0a2183b473a22
Author: Dan Smith <[email protected]>
Date:   Sat Jan 30 15:58:31 2021 -0500

    latest from coda-oss

commit 6a3859f9c2df84d19664b806182117d063a7429e
Author: Dan Smith <[email protected]>
Date:   Wed Jan 27 15:18:04 2021 -0500

    latest from coda-oss

commit 9dd7e36a96d4ea40ebba120c901904bafc3d046d
Merge: bc1744e03 d22cdb99a
Author: Dan Smith <[email protected]>
Date:   Wed Jan 27 15:16:51 2021 -0500

    Merge branch 'master' into develop/update_externals

commit bc1744e03517f4fd41a90e46b845dc818a529343
Author: Dan Smith <[email protected]>
Date:   Wed Jan 27 13:14:37 2021 -0500

    adjust to API changes in coda-oss/xml.lite

commit f204751432f3ab6a2eb60f9204aa3a1db3b8f76e
Author: Dan Smith <[email protected]>
Date:   Wed Jan 27 12:57:45 2021 -0500

    latest from nitro::master

commit 4b403052198a2bf775ae99142114009a45add25f
Author: Dan Smith <[email protected]>
Date:   Wed Jan 27 12:54:36 2021 -0500

    latest from coda-oss:master

commit f99597a1c72ab6838d139ca873bceac6251afb88
Merge: 0ecff9559 5d81778ca
Author: Dan Smith <[email protected]>
Date:   Tue Jan 26 08:43:34 2021 -0500

    Merge branch 'master' into develop/update_externals

commit 0ecff955987475619e5756b30bbe1e38add907fa
Author: Dan Smith <[email protected]>
Date:   Tue Jan 19 17:59:47 2021 -0500

    remove files that shouldn't have been committed

commit 671a89a17a8c7e818e51f0b8ac260d3cbd50b35f
Author: Dan Smith <[email protected]>
Date:   Tue Jan 19 17:28:27 2021 -0500

    trigger build on GitHub

commit 460a96b3819c150608ca6e28cf51234b53c7299e
Author: Dan Smith <[email protected]>
Date:   Tue Jan 19 17:14:26 2021 -0500

    didn't want this change

commit 0ec8633e6f1f16384e08fb0f54fc463c05c5a0a7
Author: Dan Smith <[email protected]>
Date:   Tue Jan 19 17:11:15 2021 -0500

    get #includes right for PCH

commit 824284722ce0a6b80cdbc6c76d9414032b27da45
Author: Dan Smith <[email protected]>
Date:   Tue Jan 19 16:55:58 2021 -0500

    gsl::span -> std::span

commit 70a3e7282bc4359f6edbc2df52c77e11df523b1b
Author: Dan Smith <[email protected]>
Date:   Tue Jan 19 16:50:53 2021 -0500

    these are the correct files from "master"

commit b856b5451289a0ad6bab254dd2a2d6f14aee571d
Author: Dan Smith <[email protected]>
Date:   Tue Jan 19 16:44:25 2021 -0500

    latest from coda-oss and nitro

commit fa0a138472ae143518bad1eb9d608152d32dbe22
Author: Dan Smith <[email protected]>
Date:   Tue Jan 19 16:33:06 2021 -0500

    Revert "std::span -> gsl::span"

    This reverts commit c10f2332c3650969a770c71ee830569911b9d13a.

commit f897082bd98771c278a77a14561be9e194c3878e
Merge: c10f2332c 812235491
Author: Dan Smith <[email protected]>
Date:   Tue Jan 19 16:32:43 2021 -0500

    Merge branch 'master' into develop/update_externals

commit c10f2332c3650969a770c71ee830569911b9d13a
Author: Dan Smith <[email protected]>
Date:   Sat Jan 16 15:08:25 2021 -0500

    std::span -> gsl::span

commit 9e218034c4ecdac44392473ee8f385a25a56f3c5
Author: Dan Smith <[email protected]>
Date:   Sat Jan 16 14:49:00 2021 -0500

    need to redo C++17 support

commit e21d4fcf730005f605df2d345f62e4f2399a14ca
Author: Dan Smith <[email protected]>
Date:   Sat Jan 16 14:48:25 2021 -0500

    paths are wrong in "externals"

commit 1083ac1a6cc8879d2b1c9949602321197cec4ecc
Author: Dan Smith <[email protected]>
Date:   Sat Jan 16 13:52:32 2021 -0500

    latest from "nitro"

commit 6fca2584d08b2d03374450a60d64c7086c23d568
Author: Dan Smith <[email protected]>
Date:   Sat Jan 16 12:20:13 2021 -0500

    lates from coda-oss/main

commit 1073b397a60a3a5357c5b433409dd6447b773273
Author: Dan Smith <[email protected]>
Date:   Sat Jan 16 11:41:11 2021 -0500

    add back "java" and "mex"

commit 6de2fa0d43d9d40078b0c268ac3fdeb78ae7aa39
Author: Dan Smith <[email protected]>
Date:   Wed Jan 13 10:22:13 2021 -0500

    merge brought back a deleted #include

commit 4e23991f609f2ec430a57539f80c27561abb28c8
Merge: ebe95509a 436986f87
Author: Dan Smith <[email protected]>
Date:   Wed Jan 13 10:18:55 2021 -0500

    Merge branch 'develop/update_externals' into main

commit ebe95509a01652e16d9fc9ac8869834bd2cf60a2
Author: Dan Smith <[email protected]>
Date:   Wed Jan 13 10:18:01 2021 -0500

    slam in externals as merging creates too many conflicts

commit 436986f87f612e10ada1cce884a4519daa022a5d
Author: Dan Smith <[email protected]>
Date:   Wed Jan 13 09:40:28 2021 -0500

    Revert "Revert "remove "nitro" files not needed in externals/nitro""

    This reverts commit e69391bfee6b5e7cd481fc83856f7eee95e83929.

commit e69391bfee6b5e7cd481fc83856f7eee95e83929
Author: Dan Smith <[email protected]>
Date:   Wed Jan 13 09:39:25 2021 -0500

    Revert "remove "nitro" files not needed in externals/nitro"

    This reverts commit da30b960bb2a2af6c4580c49cae6740588703653.

commit dd710d55110cdd7b4bd8a17b25784e25ac93c98d
Author: Dan Smith <[email protected]>
Date:   Wed Jan 13 08:52:28 2021 -0500

    paths are wrong in "externals"

commit da30b960bb2a2af6c4580c49cae6740588703653
Author: Dan Smith <[email protected]>
Date:   Wed Jan 13 08:27:21 2021 -0500

    remove "nitro" files not needed in externals/nitro

commit 120ee00fad22e0d6713184eb8f6660d97b76b721
Author: Dan Smith <[email protected]>
Date:   Wed Jan 13 08:25:11 2021 -0500

    fix missing #include file

commit fa1990597c9e08a30e110e5710ec0177d6aabfdf
Author: Dan Smith <[email protected]>
Date:   Tue Jan 12 17:55:17 2021 -0500

    need to redo C++17

commit 1bd0cb3a8df08c6304bea6ff3a187a2847ad37df
Author: Dan Smith <[email protected]>
Date:   Tue Jan 12 17:50:53 2021 -0500

    std::span removed from "nitro"

commit 4e6a7528b5888b965522f5e80d7279a36206aee8
Author: Dan Smith <[email protected]>
Date:   Tue Jan 12 17:30:47 2021 -0500

    latest from nitro/main

commit 99a0a01cb852152021c61696fb9b83bdab425004
Author: Dan Smith <[email protected]>
Date:   Tue Jan 12 17:28:13 2021 -0500

    adjust coda-oss for our usage

commit 65026c2702081ae9cd59f676a30934564148983b
Author: Dan Smith <[email protected]>
Date:   Tue Jan 12 17:26:59 2021 -0500

    latest from coda-oss/main

commit e6a58a2be5b66ba52b7a3747e7325acaa84276a9
Author: Dan Smith <[email protected]>
Date:   Tue Jan 12 17:24:02 2021 -0500

    slam in "main"

commit 92d5bb5ca0afce00012f8892494ef41516dc4df7
Merge: 7b8ca7066 5e5870f6b
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 18:17:21 2021 -0500

    Merge branch 'develop/update_externals' of github.com:ngageoint/six-library into develop/update_externals

commit 7b8ca7066eaea523f5f57c61648e2d6093d5b454
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 18:17:11 2021 -0500

    remove externals/nitro/docs

commit 5e5870f6b9b1d38596e6be22ab89e07def076e68
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 18:05:56 2021 -0500

    paths are wrong when in "externals"

commit d9a5c2ff8923a322760393632391c50ed793510b
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 17:42:08 2021 -0500

    more changes from nitro/modules/c++

commit 7aba3b8d9a1add0317b14de33b7717a8565a0b39
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 17:19:54 2021 -0500

    fix IOStreamWriter ctor

commit 84db123c433ef5d2ade3ad712369e23c8af8dbe8
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 17:13:14 2021 -0500

    more changes from nitro/modules/c++

commit a6880924fe205acb4faa8ca7943cf0c84d3d59e9
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 16:48:00 2021 -0500

    fix build error on Linux

commit 7a9b240ec9a313c8eb699c81dbc2742bb88fb8b4
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 15:10:45 2021 -0500

    several changes from nitro/c++ ... hoping this builds.

commit a398eefa2e2ce746becee4d72dbd7c8add57c8be
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 14:48:32 2021 -0500

    VCXPROJ files from nitro

commit b3c1dbd794849177d6416a34379987996d4e019e
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 14:26:17 2021 -0500

    update other nitro top-level files ... everything except modules/c++

commit 8fe3028cc3b051075b760fdd95b2562b7ec9734b
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 13:48:24 2021 -0500

    update "c", "java", "mex", and "python" directories -- but not "c++"

commit e82f28cd40d9e4e3029085b23048ba6c4d9c7a29
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 13:31:22 2021 -0500

    update externals/nitro/docs

commit 89522fe0f8200111a6ea860927903f38a9021727
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 13:19:38 2021 -0500

    Revert "latest from nitro/master"

    This reverts commit e89da71da0a7f494ee6e79a92f3828d8079c1c4d.

commit 3adb502a17a1bda89372b235e18388197a9eaf4f
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 13:19:24 2021 -0500

    ignore build/ directory

commit e89da71da0a7f494ee6e79a92f3828d8079c1c4d
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 12:14:31 2021 -0500

    latest from nitro/master

commit db45e1e2f214df8ab417ddde0875593f0bba537b
Author: Dan Smith <[email protected]>
Date:   Mon Jan 11 09:11:16 2021 -0500

    Revert "latest from "nitro""

    This reverts commit 0b99300f7c181eb073a86239444d30bc0acf7fa4.

commit 0b99300f7c181eb073a86239444d30bc0acf7fa4
Author: Dan Smith <[email protected]>
Date:   Sat Jan 9 18:02:30 2021 -0500

    latest from "nitro"

commit ae630e65c608257650c70735d5062db7e5e2dcc2
Author: Dan Smith <[email protected]>
Date:   Sat Jan 9 17:33:00 2021 -0500

    update externals/nitro/docs

commit f283be39d553aafad0f3132e2277038eaa4b515c
Author: Dan Smith <[email protected]>
Date:   Sat Jan 9 17:27:31 2021 -0500

    update coda-oss with latest from https://github.com/mdaus/coda-oss

commit 825a6674dba619591e343c0ecd9672703b69e3f5
Author: J. Daniel Smith <[email protected]>
Date:   Wed Dec 30 13:49:02 2020 -0500

    latest from coda-oss and nitro (#391)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * latest from "coda-oss"

    * more filesystem from coda-oss

    * latest from "nitro"

    * std::endian

    * latest from "nitro"

    * latest from "nitro" and "coda-oss"

    * latest from coda-oss

    * lost toString<nullptr>()

    * latest from coda-oss/main

    * want "std" augmented in this repo

    * partial update from coda-oss/main

    * latest from coda-oss/main

commit 21e2b675ffd4290149bc867024ded6d008e4fd1a
Author: J. Daniel Smith <[email protected]>
Date:   Tue Dec 29 17:32:49 2020 -0500

    latest from coda-oss (#390)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * latest from "coda-oss"

    * more filesystem from coda-oss

    * latest from "nitro"

    * std::endian

    * latest from "nitro"

    * latest from "nitro" and "coda-oss"

    * latest from coda-oss

    * lost toString<nullptr>()

    * latest from coda-oss/main

    * want "std" augmented in this repo

commit 433e81909997ccc83515b7b8551d82b9e09f1029
Author: J. Daniel Smith <[email protected]>
Date:   Tue Dec 22 09:38:57 2020 -0500

    reduce use of toString() (#389)

    * put common #includes for PCH in a single file

    * build check_valid_six

    * use EXIT_* rather than 0/1

    * getting rid of std::auto_ptr<> because it's gone in C++17

    * build all projects with C++17

    * use <filesystem> to remove hard-coded paths

    * in Visual Studio, run check_valid_six with a pre-defined path

    * tweak plugin dir

    * can't have "check_valid_six" as a directory for *ix build

    * build crop_sicd

    * turn on /Wall, fix some warnings

    * C++17 generates more warnings that I don't want to fix right now

    * removed some compiler warnings from third-party code

    * comment-out use of C++17's <filesystem>

    * tweak project settings for consistency

    * unit-test for createFakeComplexData()

    * turn on compiler warnings

    * crank-up warning level

    * enable "Warnings as errors"

    * turn on all warnings (many #pragma'd away)

    * get rid of more warnings

    * adjust more #pragma's

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update "nitro"

    * update coda-oss and fix compiler errors

    * use "externals" from top-level "install"

    * use int64_t, etc. instead of sys::Int64_T

    * mem::SharedPtr -> std::shared_ptr

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * use std::unique_ptr<[]> instead of mem::ScopedArray

    * use int32_t et. al. instead of sys::Int32_T

    * use std::byte (not quite working yet, but need to move code to a faster machine)

    * build with std::byte

    * build with simplified "externals" scheme

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * use std::thread::hardware_concurrency() instead of sys::OS().getNumCPUs()

    * sys::Off_T -> ptrdiff_t

    * fix compiler errors from previous merge; mostly #include <thread>

    * Revert "sys::Off_T -> ptrdiff_t"

    This reverts commit aa22a370bb02574640cf7c0b2bc20bdd4fd2add2.

    * sys::Off_T -> int64_t; sys::SSize_T -> ptrdiff_t

    * latest from "coda-oss"

    * use filesystem::path and std::endian

    * more filesystem from coda-oss

    * less use of sys::

    * NULL -> nullptr

    * use .data() rather than &d[0]

    * mem::BufferView -> std::span

    * const std::span<>& doesn't make much sense

    * need make_span() overload for pointer+size

    * latest from "nitro"

    * std::endian

    * coda-oss now gives us std::endian

    * sys::Filesystem -> std::filesystem

    * don't need to explicitly call fs::path::string() in most cases

    * sys::Filesystem -> std::filesystem

    * fix build errors when using C++17

    * simplify access to some ImageSubheader values

    * newReadControl() returns a std::unique_ptr<> rather than a raw pointer

    * a singleton is much easier in C++11

    * don't need to do manual locking in C++11

    * use a template and some macros to dramatically simplify Enums

    * adjust macros for GCC, provide operators for SWIG

    * got the map entries wrong

    * make getIndices() a bit more robust

    * store a std::unique_ptr<> instead of a raw poniter

    * throw exceptions in getIndices() rather than assuming

    * use Enum<T>.toString() where possible rather than duplicating code

    * remove duplicate code converting from a string to Enum<T>

    * don't explicilty check for "SIDD" as that's already part of getDataType()

    * use std::string instead of char[]

    * reduce use of "delete[]"

    * less use of "SICD" and "SIDD", use six::DataType instead

    * simplify Region buffer management

    * reduce some explicit use of std::shared_ptr<> with std::make_shared and/or auto

    * more reduction in explicit use of std::shared_ptr

    * latest from "nitro"

    * simplify use of six::Region

    * reduce use of explicit .toString()

    * further reduction in explicit use of toString()

    * template specialiaton can't be inline with G++

    * simplify cphd enum creation

    * reduce use of toString() with setAttribute()

    * latest from "nitro" and "coda-oss"

    * don't need catch(excep::Exception) ex.toString() as std::exception::what() now does the same thing

    * really only have two calls to setAttribute(): std::string and size_t

    * use macros to generate SIDD Enums

    * add operator<< for Enum<T> to avoid some explicit .toString() calls

    * add operator==(std::string) overload to redue need for .toString()

    * add operator<<() to redue need for .toString()

    * don't implmeent a bunch of six::toString() routines; they sholdn't be called anymore

    * further reduction in use of toString()

    * eliminate six::toString() template; just provide a few overloads instead

    * createSixString() which calls six::toString(t) instead of t.toString()

    * createSixString() overload with URI parameter

    * allow different strings (e.g., "1" and "+1") to map to the same value

    * put "Enum" support code in a separate file

    * there is now just one NOT_SET_VALUE

commit f217f237b20ad1aef87d1218b16f12e095d61c25
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 19 14:37:28 2020 -0500

    update externals (#388)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * latest from "coda-oss"

    * more filesystem from coda-oss

    * latest from "nitro"

    * std::endian

    * latest from "nitro"

    * latest from "nitro" and "coda-oss"

commit 6ba3ffdaad96c0e4f945cce27af2f8b172ebd884
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 19 10:38:06 2020 -0500

    latest changes from develop/jdsmith (#386)

    * put common #includes for PCH in a single file

    * build check_valid_six

    * use EXIT_* rather than 0/1

    * getting rid of std::auto_ptr<> because it's gone in C++17

    * build all projects with C++17

    * use <filesystem> to remove hard-coded paths

    * in Visual Studio, run check_valid_six with a pre-defined path

    * tweak plugin dir

    * can't have "check_valid_six" as a directory for *ix build

    * build crop_sicd

    * turn on /Wall, fix some warnings

    * C++17 generates more warnings that I don't want to fix right now

    * removed some compiler warnings from third-party code

    * comment-out use of C++17's <filesystem>

    * tweak project settings for consistency

    * unit-test for createFakeComplexData()

    * turn on compiler warnings

    * crank-up warning level

    * enable "Warnings as errors"

    * turn on all warnings (many #pragma'd away)

    * get rid of more warnings

    * adjust more #pragma's

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update "nitro"

    * update coda-oss and fix compiler errors

    * use "externals" from top-level "install"

    * use int64_t, etc. instead of sys::Int64_T

    * mem::SharedPtr -> std::shared_ptr

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * use std::unique_ptr<[]> instead of mem::ScopedArray

    * use int32_t et. al. instead of sys::Int32_T

    * use std::byte (not quite working yet, but need to move code to a faster machine)

    * build with std::byte

    * build with simplified "externals" scheme

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * use std::thread::hardware_concurrency() instead of sys::OS().getNumCPUs()

    * sys::Off_T -> ptrdiff_t

    * fix compiler errors from previous merge; mostly #include <thread>

    * Revert "sys::Off_T -> ptrdiff_t"

    This reverts commit aa22a370bb02574640cf7c0b2bc20bdd4fd2add2.

    * sys::Off_T -> int64_t; sys::SSize_T -> ptrdiff_t

    * latest from "coda-oss"

    * use filesystem::path and std::endian

    * more filesystem from coda-oss

    * less use of sys::

    * NULL -> nullptr

    * use .data() rather than &d[0]

    * mem::BufferView -> std::span

    * const std::span<>& doesn't make much sense

    * need make_span() overload for pointer+size

    * latest from "nitro"

    * std::endian

    * coda-oss now gives us std::endian

    * sys::Filesystem -> std::filesystem

    * don't need to explicitly call fs::path::string() in most cases

    * sys::Filesystem -> std::filesystem

    * fix build errors when using C++17

    * simplify access to some ImageSubheader values

    * newReadControl() returns a std::unique_ptr<> rather than a raw pointer

    * a singleton is much easier in C++11

    * don't need to do manual locking in C++11

    * use a template and some macros to dramatically simplify Enums

    * adjust macros for GCC, provide operators for SWIG

    * got the map entries wrong

    * make getIndices() a bit more robust

    * store a std::unique_ptr<> instead of a raw poniter

    * throw exceptions in getIndices() rather than assuming

    * use Enum<T>.toString() where possible rather than duplicating code

    * remove duplicate code converting from a string to Enum<T>

    * don't explicilty check for "SIDD" as that's already part of getDataType()

    * use std::string instead of char[]

    * reduce use of "delete[]"

    * less use of "SICD" and "SIDD", use six::DataType instead

    * simplify Region buffer management

    * reduce some explicit use of std::shared_ptr<> with std::make_shared and/or auto

    * more reduction in explicit use of std::shared_ptr

    * latest from "nitro"

    * simplify use of six::Region

    * reduce use of explicit .toString()

    * further reduction in explicit use of toString()

    * template specialiaton can't be inline with G++

    * simplify cphd enum creation

    * reduce use of toString() with setAttribute()

commit f990e7735a1135b16f2baf0be11215ec057e3bab
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 19 10:36:33 2020 -0500

    latest from "nitro" (#387)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * latest from "coda-oss"

    * more filesystem from coda-oss

    * latest from "nitro"

    * std::endian

    * latest from "nitro"

commit 514403d30f5e42b768ae5675cb8f870086d138c1
Author: J. Daniel Smith <[email protected]>
Date:   Tue Dec 8 14:30:18 2020 -0500

    latest from develop/jdsmith (#385)

    * put common #includes for PCH in a single file

    * build check_valid_six

    * use EXIT_* rather than 0/1

    * getting rid of std::auto_ptr<> because it's gone in C++17

    * build all projects with C++17

    * use <filesystem> to remove hard-coded paths

    * in Visual Studio, run check_valid_six with a pre-defined path

    * tweak plugin dir

    * can't have "check_valid_six" as a directory for *ix build

    * build crop_sicd

    * turn on /Wall, fix some warnings

    * C++17 generates more warnings that I don't want to fix right now

    * removed some compiler warnings from third-party code

    * comment-out use of C++17's <filesystem>

    * tweak project settings for consistency

    * unit-test for createFakeComplexData()

    * turn on compiler warnings

    * crank-up warning level

    * enable "Warnings as errors"

    * turn on all warnings (many #pragma'd away)

    * get rid of more warnings

    * adjust more #pragma's

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update "nitro"

    * update coda-oss and fix compiler errors

    * use "externals" from top-level "install"

    * use int64_t, etc. instead of sys::Int64_T

    * mem::SharedPtr -> std::shared_ptr

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * use std::unique_ptr<[]> instead of mem::ScopedArray

    * use int32_t et. al. instead of sys::Int32_T

    * use std::byte (not quite working yet, but need to move code to a faster machine)

    * build with std::byte

    * build with simplified "externals" scheme

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * use std::thread::hardware_concurrency() instead of sys::OS().getNumCPUs()

    * sys::Off_T -> ptrdiff_t

    * fix compiler errors from previous merge; mostly #include <thread>

    * Revert "sys::Off_T -> ptrdiff_t"

    This reverts commit aa22a370bb02574640cf7c0b2bc20bdd4fd2add2.

    * sys::Off_T -> int64_t; sys::SSize_T -> ptrdiff_t

    * latest from "coda-oss"

    * use filesystem::path and std::endian

    * more filesystem from coda-oss

    * less use of sys::

    * NULL -> nullptr

    * use .data() rather than &d[0]

    * mem::BufferView -> std::span

    * const std::span<>& doesn't make much sense

    * need make_span() overload for pointer+size

    * latest from "nitro"

    * std::endian

    * coda-oss now gives us std::endian

    * sys::Filesystem -> std::filesystem

    * don't need to explicitly call fs::path::string() in most cases

    * sys::Filesystem -> std::filesystem

    * fix build errors when using C++17

commit a2d5396ec559cde98f9d8adb50c78111a7d884b3
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 5 18:12:34 2020 -0500

    latest from "nitro" (#383)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * latest from "coda-oss"

    * more filesystem from coda-oss

    * latest from "nitro"

commit 12f6f27e269013d95df0dfb4845dc04e831717e1
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 5 17:51:26 2020 -0500

    latest from develop/jdsmith (#382)

    * put common #includes for PCH in a single file

    * build check_valid_six

    * use EXIT_* rather than 0/1

    * getting rid of std::auto_ptr<> because it's gone in C++17

    * build all projects with C++17

    * use <filesystem> to remove hard-coded paths

    * in Visual Studio, run check_valid_six with a pre-defined path

    * tweak plugin dir

    * can't have "check_valid_six" as a directory for *ix build

    * build crop_sicd

    * turn on /Wall, fix some warnings

    * C++17 generates more warnings that I don't want to fix right now

    * removed some compiler warnings from third-party code

    * comment-out use of C++17's <filesystem>

    * tweak project settings for consistency

    * unit-test for createFakeComplexData()

    * turn on compiler warnings

    * crank-up warning level

    * enable "Warnings as errors"

    * turn on all warnings (many #pragma'd away)

    * get rid of more warnings

    * adjust more #pragma's

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update "nitro"

    * update coda-oss and fix compiler errors

    * use "externals" from top-level "install"

    * use int64_t, etc. instead of sys::Int64_T

    * mem::SharedPtr -> std::shared_ptr

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * use std::unique_ptr<[]> instead of mem::ScopedArray

    * use int32_t et. al. instead of sys::Int32_T

    * use std::byte (not quite working yet, but need to move code to a faster machine)

    * build with std::byte

    * build with simplified "externals" scheme

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * use std::thread::hardware_concurrency() instead of sys::OS().getNumCPUs()

    * sys::Off_T -> ptrdiff_t

    * fix compiler errors from previous merge; mostly #include <thread>

    * Revert "sys::Off_T -> ptrdiff_t"

    This reverts commit aa22a370bb02574640cf7c0b2bc20bdd4fd2add2.

    * sys::Off_T -> int64_t; sys::SSize_T -> ptrdiff_t

    * latest from "coda-oss"

    * use filesystem::path and std::endian

    * more filesystem from coda-oss

    * less use of sys::

    * NULL -> nullptr

    * use .data() rather than &d[0]

    * mem::BufferView -> std::span

    * const std::span<>& doesn't make much sense

    * need make_span() overload for pointer+size

commit e2084e8fad7af3962ef6d6e75d0ee72906f5430b
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 5 15:56:09 2020 -0500

    latest from coda-oss (#381)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * latest from "coda-oss"

    * more filesystem from coda-oss

commit 37f162087fd80259f8f14710ef421c4fe5073113
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 5 15:52:57 2020 -0500

    NULL -> nullptr (#379)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * use int64_t, etc. instead of sys::Int64_T

    * mem::SharedPtr -> std::shared_ptr

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * use std::unique_ptr<[]> instead of mem::ScopedArray

    * use int32_t et. al. instead of sys::Int32_T

    * use std::byte (not quite working yet, but need to move code to a faster machine)

    * build with std::byte

    * use std::thread::hardware_concurrency() instead of sys::OS().getNumCPUs()

    * sys::Off_T -> ptrdiff_t

    * Revert "sys::Off_T -> ptrdiff_t"

    This reverts commit aa22a370bb02574640cf7c0b2bc20bdd4fd2add2.

    * sys::Off_T -> int64_t; sys::SSize_T -> ptrdiff_t

    * use filesystem::path and std::endian

    * less use of sys::

    * NULL -> nullptr

commit ef45d66b7ce27551cb9d96555da353ef266c9e9b
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 5 12:43:44 2020 -0500

    fix build errors from recent changes (#378)

    * put common #includes for PCH in a single file

    * build check_valid_six

    * use EXIT_* rather than 0/1

    * getting rid of std::auto_ptr<> because it's gone in C++17

    * build all projects with C++17

    * use <filesystem> to remove hard-coded paths

    * in Visual Studio, run check_valid_six with a pre-defined path

    * tweak plugin dir

    * can't have "check_valid_six" as a directory for *ix build

    * build crop_sicd

    * turn on /Wall, fix some warnings

    * C++17 generates more warnings that I don't want to fix right now

    * removed some compiler warnings from third-party code

    * comment-out use of C++17's <filesystem>

    * tweak project settings for consistency

    * unit-test for createFakeComplexData()

    * turn on compiler warnings

    * crank-up warning level

    * enable "Warnings as errors"

    * turn on all warnings (many #pragma'd away)

    * get rid of more warnings

    * adjust more #pragma's

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update "nitro"

    * update coda-oss and fix compiler errors

    * use "externals" from top-level "install"

    * use int64_t, etc. instead of sys::Int64_T

    * mem::SharedPtr -> std::shared_ptr

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * use std::unique_ptr<[]> instead of mem::ScopedArray

    * use int32_t et. al. instead of sys::Int32_T

    * use std::byte (not quite working yet, but need to move code to a faster machine)

    * build with std::byte

    * build with simplified "externals" scheme

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * use std::thread::hardware_concurrency() instead of sys::OS().getNumCPUs()

    * sys::Off_T -> ptrdiff_t

    * fix compiler errors from previous merge; mostly #include <thread>

    * Revert "sys::Off_T -> ptrdiff_t"

    This reverts commit aa22a370bb02574640cf7c0b2bc20bdd4fd2add2.

    * sys::Off_T -> int64_t; sys::SSize_T -> ptrdiff_t

    * latest from "coda-oss"

commit d038e0e3d68a9dc1783d84ad39f5e03aced505ff
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 5 12:21:22 2020 -0500

    more use of C++11 (#377)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * use int64_t, etc. instead of sys::Int64_T

    * mem::SharedPtr -> std::shared_ptr

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * use std::unique_ptr<[]> instead of mem::ScopedArray

    * use int32_t et. al. instead of sys::Int32_T

    * use std::byte (not quite working yet, but need to move code to a faster machine)

    * build with std::byte

    * use std::thread::hardware_concurrency() instead of sys::OS().getNumCPUs()

    * sys::Off_T -> ptrdiff_t

    * Revert "sys::Off_T -> ptrdiff_t"

    This reverts commit aa22a370bb02574640cf7c0b2bc20bdd4fd2add2.

    * sys::Off_T -> int64_t; sys::SSize_T -> ptrdiff_t

commit 10df67a17abcf66dd74e3608195dd5957e0c2241
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 5 12:20:04 2020 -0500

    latest from "coda-oss" (#376)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

    * latest from "coda-oss"

commit 48deaeb01376d88956a1b84097ae953c2e939c85
Author: J. Daniel Smith <[email protected]>
Date:   Sat Dec 5 10:05:33 2020 -0500

    latest "nitro" (#375)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

    * latest from "nitro"

    * match nitro -> nitf change

    * make_span()

commit b03c97994b65dad3e5fe5af14be3dc43379423f3
Author: J. Daniel Smith <[email protected]>
Date:   Wed Dec 2 10:55:11 2020 -0500

    use c++11 features (#374)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * use int64_t, etc. instead of sys::Int64_T

    * mem::SharedPtr -> std::shared_ptr

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

    * update "nitro" to get SegmentMemorySource overloads

commit f1b6d2255807c658c55a83232cd3e8b40a59348b
Author: J. Daniel Smith <[email protected]>
Date:   Tue Dec 1 17:53:46 2020 -0500

    update externals (#373)

    * update "nitro"

    * update coda-oss and fix compiler errors

    * update coda-oss and nitro with less use of sys::

    * unit-test paths are wrong for "externals"

commit 4538574440414f950dd454424ee00ee15754fe0e
Author: J. Daniel Smith <[email protected]>
Date:   Tue Dec 1 13:11:34 2020 -0500

    remove some compiler warnings (#372)

    * getting rid of std::auto_ptr<> because it's gone in C++17

    * build all projects with C++17

    * turn on compiler warnings

    * crank-up warning level

    * enable "Warnings as errors"

    * turn on all warnings (many #pragma'd away)

    * get rid of more warnings

    * adjust more #pragma's

commit 79aa44ff0388a3ba7cdcc51d42bd1c11475efdc4
Author: J. Daniel Smith <[email protected]>
Date:   Mon Nov 30 13:45:16 2020 -0500

    add another unit-test (#371)

    * put common #includes for PCH in a single file

    * build check_valid_six

    * use EXIT_* rather than 0/1

    * getting rid of std::auto_ptr<> because it's gone in C++17

    * build all projects with C++17

    * use <filesystem> to remove hard-coded paths

    * in Visual Studio, run check_valid_six with a pre-defined path

    * tweak plugin dir

    * can't have "check_valid_six" as a directory for *ix build

    * build crop_sicd

    * turn on /Wall, fix some warnings

    * C++17 generates more warnings that I don't want to fix right now

    * removed some compiler warnings from third-party code

    * comment-out use of C++17's <filesystem>

    * tweak project settings for consistency

    * unit-test for createFakeComplexData()

commit ce28071805c3d6aeb23413ff13dd1d4f0c75e7fc
Author: Dan Smith <[email protected]>
Date:   Mon Nov 9 14:51:12 2020 -0500

    use .tar, not .tar.gz

commit f9283e8b6eb56a2ca4fb193964240087a8c1ce7d
Author: J. Daniel Smith <[email protected]>
Date:   Mon Nov 9 14:31:00 2020 -0500

    preserve utf8 in XML text (#363)

    * pass io::Encoding::Utf8 to print() and prettyPrint() to preserve UTF-8 in output

    * store the value of xml::lite::MinidomParser::preserveCharacterData() so we can figure out the encoding

    * Don't want to set a dummy schema path to a directory that exists

    * add a unit-test for UTF-8 characters in "Classification"

    * fix isUnclassified() so it works for "NON CLASSIFIÉ / UNCLASSIFIED"

    * Revert "Merge branch 'main' into bugfix/preserve_UTF8_in_classified_field"

    This reverts commit 12534c9701ce19169bcb1d8c6051813d67dee8e2, reversing
    changes made to 02ce75550c12b14c9b4bdf3f04f18716220c5152.

    * account for coda-oss changes where TextEncoding is part of the OutputStream

    * get the right verson of Element.h

    * use new xml::lite to read/write XML in UTF-8

    * be sure we can read-in and process UTF-8 from a NITF

    * assume UTF-8 on *ix and Windows-1252 on Windows

    * reduce "gratuatous" diffs for simpler merge request

    * one more unneeded diff

    * French -> Canada

    * latest from coda-oss

    * trying to get the test_valid_six unittest working on Linux

commit 3c07e7278d53b0500d35c1153bbd827f74b1b090
Author: J. Daniel Smith <[email protected]>
Date:   Mon Nov 9 14:10:17 2020 -0500

    update "nitro" and "coda-oss" (#370)

    * update "nitro" and "coda-oss"

    * Delete CMakeSettings.json

    * changeFileHeader() doesn't (yet) work in "externals"

commit 5c4bfb60bdb0dd778135dc7476b82735e82b0413
Merge: 950668d00 90e42da6b
Author: Dan Smith <[email protected]>
Date:   Wed Nov 4 09:35:45 2020 -0500

    Merge branch 'develop/update_externals' into main

commit 90e42da6b5a3c2cb23e2183bbd5afc46b1785507
Author: Dan Smith <[email protected]>
Date:   Wed Nov 4 09:34:33 2020 -0500

    use sys::Filesystem

commit f014cf4b86e62d26971e458af52d5e28f183ea6d
Author: Dan Smith <[email protected]>
Date:   Tue Nov 3 18:27:23 2020 -0500

    use Filesystem.h from coda-oss instead of <filesystem>

commit 950668d00022199c0c5e4a60f6ee0a1524c92fbc
Author: J. Daniel Smith <[email protected]>
Date:   Tue Nov 3 15:51:14 2020 -0500

    latest from coda-oss (#369)

    * update coda-oss with latest from "main"

    * coda-oss updates to make TextEncoding part of the OutputStream

    * updates from coda-oss to make TextEncoding part of the OutputStream

    * fix StringStream() .ctor()

    * one more coda-oss update

    * latest from "main" on coda-oss: xml.lite updates for UTF-8

    * restore changes lost in merge

    * latest from coda-oss

    * latest from coda-oss

    * latest from coda-oss

    * latest from "main" on coda-oss

commit 29d743f25f42b89e9c34a7d64ae659fb263c5073
Author: Dan Smith <[email protected]>
Date:   Tue Nov 3 15:30:24 2020 -0500

    latest from "main" on coda-oss

commit 70d253c1f34df1bd79aca35737e9fc60ab97cc61
Merge: f332607bf 3a042b670
Author: Dan Smith <[email protected]>
Date:   Tue Nov 3 15:24:47 2020 -0500

    Merge branch 'main' into develop/update_externals

commit 3a042b6707eef97a43b508513ed11ca7f7bc0f2a
Author: J. Daniel Smith <[email protected]>
Date:   Mon Nov 2 16:03:00 2020 -0500

    latest from coda-oss (#368)

    * update coda-oss with latest from "main"

    * coda-oss updates to make TextEncoding part of the OutputStream

    * updates from coda-oss to make TextEncoding part of the OutputStream

    * fix StringStream() .ctor()

    * one more coda-oss update

    * latest from "main" on coda-oss: xml.lite updates for UTF-8

    * restore changes lost in merge

    * latest from coda-oss

    * latest from coda-oss

    * latest from coda-oss

commit f332607bfe6ada9958f68c2fa370055600756486
Author: Dan Smith <[email protected]>
Date:   Mon Nov 2 15:41:41 2020 -0500

    latest from coda-oss

commit 5c48090a2dbb0c665a12f45cf126329395fcb0c4
Author: J. Daniel Smith <[email protected]>
Date:   Mon Oct 26 17:56:20 2020 -0400

    Develop/update externals (#367)

    * update coda-oss with latest from "main"

    * coda-oss updates to make TextEncoding part of the OutputStream

    * updates from coda-oss to make TextEncoding part of the OutputStream

    * fix StringStream() .ctor()

    * one more coda-oss update

    * latest from "main" on coda-oss: xml.lite updates for UTF-8

    * restore changes lost in merge

    * latest from coda-oss

    * latest from coda-oss

commit 313a60141a3e42d99067fa5bc6a9a98cfbe6f575
Author: Dan Smith <[email protected]>
Date:   Mon Oct 26 17:28:09 2020 -0400

    latest from coda-oss

commit f71c7eda1610f1dc5f9668c541c8cd925fd3c963
Merge: d3423b3b8 404dadcd2
Author: Dan Smith <[email protected]>
Date:   Mon Oct 26 17:26:57 2020 -0400

    Merge branch 'main' into develop/update_externals

commit 404dadcd26851a243332d8263e57230687bad231
Author: J. Daniel Smith <[email protected]>
Date:   Mon Oct 26 16:07:44 2020 -0400

    another update to coda-oss (#366)

    * update coda-oss with latest from "main"

    * coda-oss updates to make TextEncoding part of the OutputStream

    * updates from coda-oss to make TextEncoding part of the OutputStream

    * fix StringStream() .ctor()

    * one more coda-oss update

    * latest from "main" on coda-oss: xml.lite updates for UTF-8

    * restore changes lost in merge

    * latest from coda-oss

commit d3423b3b832f65dfc699c6faf7e1a055b226f2d0
Author: Dan Smith <[email protected]>
Date:   Mon Oct 26 14:57:51 2020 -0400

    latest from coda-oss

commit 18613b5bfb2e988e1c809a3df774e6335a5537b9
Merge: 8ff24519e 21a550c5a
Author: Dan Smith <[email protected]>
Date:   Mon Oct 26 14:48:50 2020 -0400

    Merge branch 'main' into develop/update_externals

commit 21a550c5aca6c0c2f0d9cb9112be3f8f84c54cdb
Author: J. Daniel Smith <[email protected]>
Date:   Mon Oct 26 12:35:42 2020 -0400

    update coda-oss (#365)

    * update coda-oss with latest from "main"

    * coda-oss updates to make TextEncoding part of the OutputStream

    * updates from coda-oss to make TextEncoding part of the OutputStream

    * fix StringStream() .ctor()

    * one more coda-oss update

    * latest from "main" on coda-oss: xml.lite updates for UTF-8

    * restore changes lost in merge

commit 8ff24519ec9c24df4d2a4f5302eaec697e048737
Author: Dan Smith <[email protected]>
Date:   Mon Oct 26…
  • Loading branch information
Dan Smith committed Aug 31, 2021
1 parent 9c154ad commit 974069c
Show file tree
Hide file tree
Showing 9 changed files with 285 additions and 89 deletions.
14 changes: 11 additions & 3 deletions externals/coda-oss/modules/c++/mem/include/mem/SharedPtr.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,11 @@
*
*/

#ifndef __MEM_SHARED_PTR_H__
#define __MEM_SHARED_PTR_H__
#ifndef CODA_OSS_mem_SharedPtr_h_INCLUDED_
#define CODA_OSS_mem_SharedPtr_h_INCLUDED_
#pragma once

#include <memory>

#include <config/coda_oss_config.h>

Expand All @@ -34,10 +37,15 @@
// as part of a SWIG interface will result in a missing template type error.
namespace mem
{
#if !CODA_OSS_enable_mem_SharedPtr
template <typename T>
using SharedPtr = std::shared_ptr<T>;
#else
template<typename T>
class SharedPtr;
#endif
}

#include <mem/SharedPtrCpp11.h>

#endif
#endif // CODA_OSS_mem_SharedPtr_h_INCLUDED_
31 changes: 26 additions & 5 deletions externals/coda-oss/modules/c++/mem/include/mem/SharedPtrCpp11.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
*
*/

#ifndef __MEM_SHARED_PTR_CPP_11_H__
#define __MEM_SHARED_PTR_CPP_11_H__
#ifndef CODA_OSS_mem_SharedPtrCpp11_h_INCLUDED_
#define CODA_OSS_mem_SharedPtrCpp11_h_INCLUDED_
#pragma once

#include <memory>
Expand All @@ -43,6 +43,14 @@ template <typename T>
using auto_ptr = std::unique_ptr<T>;
#endif

// Pretty much give-up on mem::SharedPtr as it's too hard to get something that will
// compile with all the different compilers; let somebody else worry about that
// via std::shared_ptr. The only code change is use_count() instead of getCount(),
// and that's mostly used in unit-tests.
#if !CODA_OSS_enable_mem_SharedPtr
template<typename T>
using SharedPtr = std::shared_ptr<T>;
#else
/*!
* \class SharedPtr
* \brief This is a derived class of std::shared_ptr. The purpose of this
Expand Down Expand Up @@ -71,8 +79,13 @@ class SharedPtr : public std::shared_ptr<T>
SharedPtr(SharedPtr&&) = default;
SharedPtr& operator=(SharedPtr&&) = default;

SharedPtr(std::shared_ptr<T> ptr) : std::shared_ptr<T>(ptr) {}
SharedPtr& operator=(const std::shared_ptr<T>& ptr)
template<typename OtherT>
SharedPtr(const std::shared_ptr<OtherT>& ptr)
{
*this = ptr;
}
template<typename OtherT>
SharedPtr& operator=(const std::shared_ptr<OtherT>& ptr)
{
std::shared_ptr<T>& base = *this;
base = ptr;
Expand Down Expand Up @@ -116,6 +129,7 @@ class SharedPtr : public std::shared_ptr<T>
return std::shared_ptr<T>::use_count();
}
};
#endif // CODA_OSS_enable_mem_SharedPtr

// C++11 inadvertently ommitted make_unique; provide it here. (Swiped from <memory>.)
namespace make
Expand Down Expand Up @@ -163,4 +177,11 @@ void unique(TArgs&&...) = delete;
} // namespace make
} // namespace mem

#endif
// try to make code changes a tiny bit easier?
template<typename T>
inline long getCount(const std::shared_ptr<T>& p) noexcept // be sure const& so that calling doesn't increment!
{
return p.use_count();
}

#endif // CODA_OSS_mem_SharedPtrCpp11_h_INCLUDED_
123 changes: 98 additions & 25 deletions externals/coda-oss/modules/c++/mem/unittests/test_shared_ptr.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,9 @@ TEST_CASE(testAutoPtrConstructor)
const mem::SharedPtr<int> ptr(autoPtr.release());
TEST_ASSERT_EQ(ptr.get(), rawPtr);
TEST_ASSERT_EQ(autoPtr.get(), static_cast<int *>(NULL));
TEST_ASSERT_EQ(ptr.getCount(), 1);
//TEST_ASSERT_EQ(ptr.getCount(), 1);
TEST_ASSERT_EQ(ptr.use_count(), 1);
TEST_ASSERT_EQ(getCount(ptr), 1);
}

TEST_CASE(testAutoPtrReset)
Expand All @@ -113,7 +115,9 @@ TEST_CASE(testAutoPtrReset)
sharedPtr.reset(autoPtr.release());
TEST_ASSERT_EQ(sharedPtr.get(), rawPtr1);
TEST_ASSERT_NULL(autoPtr.get());
TEST_ASSERT_EQ(sharedPtr.getCount(), 1);
//TEST_ASSERT_EQ(sharedPtr.getCount(), 1);
TEST_ASSERT_EQ(sharedPtr.use_count(), 1);
TEST_ASSERT_EQ(getCount(sharedPtr), 1);
}

TEST_CASE(testCopying)
Expand All @@ -124,14 +128,21 @@ TEST_CASE(testCopying)
mem::SharedPtr<int> ptr1(rawPtr);
TEST_ASSERT_EQ(ptr1.get(), rawPtr);
TEST_ASSERT_EQ(*ptr1.get(), 89);
TEST_ASSERT_EQ(ptr1.getCount(), 1);
//TEST_ASSERT_EQ(ptr1.getCount(), 1);
TEST_ASSERT_EQ(ptr1.use_count(), 1);
TEST_ASSERT_EQ(getCount(ptr1), 1);

const mem::SharedPtr<int> ptr2(ptr1);
TEST_ASSERT_EQ(ptr1.get(), rawPtr);
TEST_ASSERT_EQ(ptr2.get(), rawPtr);
TEST_ASSERT_EQ(*ptr2.get(), 89);
TEST_ASSERT_EQ(ptr1.getCount(), 2);
TEST_ASSERT_EQ(ptr2.getCount(), 2);
//TEST_ASSERT_EQ(ptr1.getCount(), 2);
TEST_ASSERT_EQ(ptr1.use_count(), 2);
TEST_ASSERT_EQ(getCount(ptr1), 2);
//TEST_ASSERT_EQ(ptr2.getCount(), 2);
TEST_ASSERT_EQ(ptr2.use_count(), 2);
TEST_ASSERT_EQ(getCount(ptr2), 2);


// We already know they're pointing at the same underlying data, but
// show it this way too for kicks
Expand All @@ -142,18 +153,27 @@ TEST_CASE(testCopying)
// Decrement the reference count
ptr1.reset();
TEST_ASSERT_EQ(*ptr2.get(), 334);
TEST_ASSERT_EQ(ptr2.getCount(), 1);
//TEST_ASSERT_EQ(ptr2.getCount(), 1);
TEST_ASSERT_EQ(ptr2.use_count(), 1);
TEST_ASSERT_EQ(getCount(ptr2), 1);


// Do the same thing but show that ptr2 going out of scope is
// equivalent to it being reset
ptr3.reset(new mem::SharedPtr<int>(ptr2));
TEST_ASSERT_EQ(ptr3->get(), rawPtr);
TEST_ASSERT_EQ(ptr2.getCount(), 2);
TEST_ASSERT_EQ(ptr3->getCount(), 2);
//TEST_ASSERT_EQ(ptr2.getCount(), 2);
TEST_ASSERT_EQ(ptr2.use_count(), 2);
TEST_ASSERT_EQ(getCount(ptr2), 2);
//TEST_ASSERT_EQ(ptr3->getCount(), 2);
TEST_ASSERT_EQ(ptr3->use_count(), 2);
TEST_ASSERT_EQ(getCount(*ptr3), 2);
}

TEST_ASSERT_EQ(ptr3->get(), rawPtr);
TEST_ASSERT_EQ(ptr3->getCount(), 1);
//TEST_ASSERT_EQ(ptr3->getCount(), 1);
TEST_ASSERT_EQ(ptr3->use_count(), 1);
TEST_ASSERT_EQ(getCount(*ptr3), 1);
}

static std::shared_ptr<int> getIntSP()
Expand All @@ -169,15 +189,22 @@ TEST_CASE(testAssigning)
mem::SharedPtr<int> ptr1(rawPtr);
TEST_ASSERT_EQ(ptr1.get(), rawPtr);
TEST_ASSERT_EQ(*ptr1.get(), 89);
TEST_ASSERT_EQ(ptr1.getCount(), 1);
//TEST_ASSERT_EQ(ptr1.getCount(), 1);
TEST_ASSERT_EQ(ptr1.use_count(), 1);
TEST_ASSERT_EQ(getCount(ptr1), 1);

mem::SharedPtr<int> ptr2;
ptr2 = ptr1;
TEST_ASSERT_EQ(ptr1.get(), rawPtr);
TEST_ASSERT_EQ(ptr2.get(), rawPtr);
TEST_ASSERT_EQ(*ptr2.get(), 89);
TEST_ASSERT_EQ(ptr1.getCount(), 2);
TEST_ASSERT_EQ(ptr2.getCount(), 2);
//TEST_ASSERT_EQ(ptr1.getCount(), 2);
TEST_ASSERT_EQ(ptr1.use_count(), 2);
TEST_ASSERT_EQ(getCount(ptr1), 2);
//TEST_ASSERT_EQ(ptr2.getCount(), 2);
TEST_ASSERT_EQ(ptr2.use_count(), 2);
TEST_ASSERT_EQ(getCount(ptr2), 2);


// We already know they're pointing at the same underlying data, but
// show it this way too for kicks
Expand All @@ -188,22 +215,51 @@ TEST_CASE(testAssigning)
// Decrement the reference count
ptr1.reset();
TEST_ASSERT_EQ(*ptr2.get(), 334);
TEST_ASSERT_EQ(ptr2.getCount(), 1);
//TEST_ASSERT_EQ(ptr2.getCount(), 1);
TEST_ASSERT_EQ(ptr2.use_count(), 1);
TEST_ASSERT_EQ(getCount(ptr2), 1);


// Do the same thing but show that ptr2 going out of scope is
// equivalent to it being reset
ptr3 = ptr2;
TEST_ASSERT_EQ(ptr3.get(), rawPtr);
TEST_ASSERT_EQ(ptr2.getCount(), 2);
TEST_ASSERT_EQ(ptr3.getCount(), 2);
//TEST_ASSERT_EQ(ptr2.getCount(), 2);
TEST_ASSERT_EQ(ptr2.use_count(), 2);
TEST_ASSERT_EQ(getCount(ptr2), 2);
//TEST_ASSERT_EQ(ptr3.getCount(), 2);
TEST_ASSERT_EQ(ptr3.use_count(), 2);
TEST_ASSERT_EQ(getCount(ptr3), 2);
}

TEST_ASSERT_EQ(ptr3.get(), rawPtr);
TEST_ASSERT_EQ(ptr3.getCount(), 1);

//TEST_ASSERT_EQ(ptr3.getCount(), 1);
TEST_ASSERT_EQ(ptr3.use_count(), 1);
TEST_ASSERT_EQ(getCount(ptr3), 1);

mem::SharedPtr<int> result;
result = getIntSP();

// code like this is in CODA
{
std::shared_ptr<Bar> mTileStreams_;
auto mTileStreams = &mTileStreams_;
mem::SharedPtr<Foo> outStream_(mTileStreams[0]); // clearly copy
mem::SharedPtr<Foo> outStream = mTileStreams[0]; // copy
outStream = mTileStreams[0]; // assignment
}
{ // variations of the above;
mem::SharedPtr<Bar> mTileStreams_;
auto mTileStreams = &mTileStreams_;
mem::SharedPtr<Foo> outStream = mTileStreams[0]; // copy
outStream = mTileStreams[0]; // assignment
}
{ // variations of the above;
mem::SharedPtr<Bar> mTileStreams_;
auto mTileStreams = &mTileStreams_;
std::shared_ptr<Foo> outStream = mTileStreams[0]; // copy
outStream = mTileStreams[0]; // assignment
}
}

TEST_CASE(testSyntax)
Expand All @@ -223,7 +279,9 @@ TEST_CASE(testCasting)
Bar* const rawBar(new Bar(456));
const mem::SharedPtr<Foo> fooPtr(rawBar);
TEST_ASSERT_EQ(fooPtr.get(), rawBar);
TEST_ASSERT_EQ(fooPtr.getCount(), 1);
//TEST_ASSERT_EQ(fooPtr.getCount(), 1);
TEST_ASSERT_EQ(fooPtr.use_count(), 1);
TEST_ASSERT_EQ(getCount(fooPtr), 1);
}

{
Expand All @@ -233,35 +291,50 @@ TEST_CASE(testCasting)
const mem::SharedPtr<Foo> fooPtr(autoBar.release());
TEST_ASSERT_EQ(fooPtr.get(), rawBar);
TEST_ASSERT_EQ(autoBar.get(), static_cast<Bar *>(NULL));
TEST_ASSERT_EQ(fooPtr.getCount(), 1);
//TEST_ASSERT_EQ(fooPtr.getCount(), 1);
TEST_ASSERT_EQ(fooPtr.use_count(), 1);
TEST_ASSERT_EQ(getCount(fooPtr), 1);
}

{
// Test creating SharedPtr of base class from SharedPtr of derived
Bar* const rawBar(new Bar(456));
const mem::SharedPtr<Bar> barPtr(rawBar);
TEST_ASSERT_EQ(barPtr.getCount(), 1);
//TEST_ASSERT_EQ(barPtr.getCount(), 1);
TEST_ASSERT_EQ(barPtr.use_count(), 1);
TEST_ASSERT_EQ(getCount(barPtr), 1);
const mem::SharedPtr<Foo> fooPtr(barPtr);
TEST_ASSERT_EQ(fooPtr.get(), rawBar);
TEST_ASSERT_EQ(fooPtr.getCount(), 2);
//TEST_ASSERT_EQ(fooPtr.getCount(), 2);
TEST_ASSERT_EQ(fooPtr.use_count(), 2);
TEST_ASSERT_EQ(getCount(fooPtr), 2);
TEST_ASSERT_EQ(barPtr.get(), rawBar);
TEST_ASSERT_EQ(barPtr.getCount(), 2);
//TEST_ASSERT_EQ(barPtr.getCount(), 2);
TEST_ASSERT_EQ(barPtr.use_count(), 2);
TEST_ASSERT_EQ(getCount(barPtr), 2);


const mem::SharedPtr<Foo> fooPtr2 = barPtr;
TEST_ASSERT_EQ(fooPtr2.get(), rawBar);
TEST_ASSERT_EQ(fooPtr2.getCount(), 3);
//TEST_ASSERT_EQ(fooPtr2.getCount(), 3);
TEST_ASSERT_EQ(fooPtr2.use_count(), 3);
TEST_ASSERT_EQ(getCount(fooPtr2), 3);
}

{
// Test creating a class with a SharedPtr of base class as parameter
// from a class with a SharedPtr of derived as parameter
Bar* const rawBar(new Bar(456));
const mem::SharedPtr<Bar> barPtr(rawBar);
TEST_ASSERT_EQ(barPtr.getCount(), 1);
//TEST_ASSERT_EQ(barPtr.getCount(), 1);
TEST_ASSERT_EQ(barPtr.use_count(), 1);
TEST_ASSERT_EQ(getCount(barPtr), 1);
const BarPtrTest barTest(barPtr);
TEST_ASSERT_EQ(barTest.mFooPtr.get(), rawBar);
TEST_ASSERT_EQ(barTest.mBarPtr.get(), rawBar);
TEST_ASSERT_EQ(barPtr.getCount(), 3);
//TEST_ASSERT_EQ(barPtr.getCount(), 3);
TEST_ASSERT_EQ(barPtr.use_count(), 3);
TEST_ASSERT_EQ(getCount(barPtr), 3);
}
}

Expand Down
4 changes: 2 additions & 2 deletions externals/nitro/modules/c++/nitf/include/nitf/Field.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -302,9 +302,9 @@ class NITRO_NITFCPP_API Field /*final*/ : public nitf::Object<nitf_Field> // no
const auto pNative = getNativeOrThrow();
return std::string(pNative->raw, pNative->length);
}
std::string toString() const
std::string toString(bool trim=false) const
{
return *this;
return trim ? toTrimString() : *this;
}
std::string toTrimString() const
{
Expand Down
Loading

0 comments on commit 974069c

Please sign in to comment.