{"action":"created","comment":{"url":"https://api.github.com/repos/OSGeo/gdal/pulls/comments/70071442","id":70071442,"diff_hunk":"@@ -3344,7 +3344,12 @@ char ** GDALDataset::GetMetadata(const char * pszDomain)\n char ** GDALDataset::GetMetadataDomainList()\n {\n   char ** currentDomainList = CSLDuplicate(oMDMD.GetDomainList());\n-  currentDomainList = CSLAddString(currentDomainList,\"DERIVED_SUBDATASETS\");\n+\n+  // Ensure that we do not duplicate DERIVED domain\n+  if(CSLFindString(currentDomainList,\"DERIVED_SUBDATASETS\")==-1)","path":"gdal/gcore/gdaldataset.cpp","position":null,"original_position":7,"commit_id":"f6aaf6dbfce9c32a571bf54d3b82d69fe9789daf","original_commit_id":"f6aaf6dbfce9c32a571bf54d3b82d69fe9789daf","user":{"login":"rouault","id":1192433,"avatar_url":"https://avatars.githubusercontent.com/u/1192433?v=3","gravatar_id":"","url":"https://api.github.com/users/rouault","html_url":"https://github.com/rouault","followers_url":"https://api.github.com/users/rouault/followers","following_url":"https://api.github.com/users/rouault/following{/other_user}","gists_url":"https://api.github.com/users/rouault/gists{/gist_id}","starred_url":"https://api.github.com/users/rouault/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rouault/subscriptions","organizations_url":"https://api.github.com/users/rouault/orgs","repos_url":"https://api.github.com/users/rouault/repos","events_url":"https://api.github.com/users/rouault/events{/privacy}","received_events_url":"https://api.github.com/users/rouault/received_events","type":"User","site_admin":false},"body":"In which situation would DERIVED_SUBDATASETs already be in oMDMD.GetDomainList() ?","created_at":"2016-07-08T13:16:00Z","updated_at":"2016-07-08T13:16:00Z","html_url":"https://github.com/OSGeo/gdal/pull/142#discussion_r70071442","pull_request_url":"https://api.github.com/repos/OSGeo/gdal/pulls/142","_links":{"self":{"href":"https://api.github.com/repos/OSGeo/gdal/pulls/comments/70071442"},"html":{"href":"https://github.com/OSGeo/gdal/pull/142#discussion_r70071442"},"pull_request":{"href":"https://api.github.com/repos/OSGeo/gdal/pulls/142"}}},"pull_request":{"url":"https://api.github.com/repos/OSGeo/gdal/pulls/142","id":76580870,"html_url":"https://github.com/OSGeo/gdal/pull/142","diff_url":"https://github.com/OSGeo/gdal/pull/142.diff","patch_url":"https://github.com/OSGeo/gdal/pull/142.patch","issue_url":"https://api.github.com/repos/OSGeo/gdal/issues/142","number":142,"state":"open","locked":false,"title":"Enhance gdal capabilities for complex datasets","user":{"login":"jmichel-otb","id":10595679,"avatar_url":"https://avatars.githubusercontent.com/u/10595679?v=3","gravatar_id":"","url":"https://api.github.com/users/jmichel-otb","html_url":"https://github.com/jmichel-otb","followers_url":"https://api.github.com/users/jmichel-otb/followers","following_url":"https://api.github.com/users/jmichel-otb/following{/other_user}","gists_url":"https://api.github.com/users/jmichel-otb/gists{/gist_id}","starred_url":"https://api.github.com/users/jmichel-otb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmichel-otb/subscriptions","organizations_url":"https://api.github.com/users/jmichel-otb/orgs","repos_url":"https://api.github.com/users/jmichel-otb/repos","events_url":"https://api.github.com/users/jmichel-otb/events{/privacy}","received_events_url":"https://api.github.com/users/jmichel-otb/received_events","type":"User","site_admin":false},"body":"This pull request creates a new metadata domain, called DERIVED_SUBDATASETS, for all datasets supported by gdal.\r\n\r\nThis new metadata domain reports derived subdatasets that actually are derived vrt raster band using some of the pixel functions from Valentino. Those functions where integrated in another pull request, that has been merged in this one (see https://github.com/OSGeo/gdal/pull/141)\r\n\r\nExposed derived datasets are described in a single array, which makes it rather easy to add new derived datasets in the future.\r\n\r\nHere is an example on Sentinel1 dataset : \r\n\r\n$ gdalinfo -nogcp -mdd DERIVED_SUBDATASETS s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff \r\nDriver: GTiff/GeoTIFF\r\nFiles: s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\nSize is 17663, 31106\r\nCoordinate System is `'\r\nMetadata:\r\n  AREA_OR_POINT=Area\r\n  TIFFTAG_DATETIME=2015:06:20 01:52:30\r\n  TIFFTAG_IMAGEDESCRIPTION=Sentinel-1A SM SLC L1\r\n  TIFFTAG_SOFTWARE=Sentinel-1 IPF 002.45\r\nMetadata (DERIVED_SUBDATASETS):\r\n  DERIVED_SUBDATASET_0_NAME=DERIVED_SUBDATASET:AMPLITUDE:s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_0_DESC=Amplitude of input bands from s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_1_NAME=DERIVED_SUBDATASET:PHASE:s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_1_DESC=Phase of input bands from s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_2_NAME=DERIVED_SUBDATASET:REAL:s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_2_DESC=Real part of input bands from s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_3_NAME=DERIVED_SUBDATASET:IMAG:s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_3_DESC=Imaginary part of input bands from s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_4_NAME=DERIVED_SUBDATASET:CONJ:s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_4_DESC=Conjugate of input bands from s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_5_NAME=DERIVED_SUBDATASET:INTENSITY:s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_5_DESC=Intensity (squared amplitude) of input bands from s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_6_NAME=DERIVED_SUBDATASET:LOGAMPLITUDE:s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\n  DERIVED_SUBDATASET_6_DESC=log10 of amplitude of input bands from s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\nImage Structure Metadata:\r\n  INTERLEAVE=BAND\r\nCorner Coordinates:\r\nUpper Left  (    0.0,    0.0)\r\nLower Left  (    0.0,31106.0)\r\nUpper Right (17663.0,    0.0)\r\nLower Right (17663.0,31106.0)\r\nCenter      ( 8831.5,15553.0)\r\nBand 1 Block=17663x1 Type=CInt16, ColorInterp=Gray\r\n\r\nAnd :\r\n\r\n$ gdalinfo -nogcp DERIVED_SUBDATASET:AMPLITUDE:s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\nDriver: COMPLEXDERIVED/Complex derived bands\r\nFiles: s1a-s6-slc-vv-20150619t195043-20150619t195101-006447-00887d-001.tiff\r\nSize is 17663, 31106\r\nCoordinate System is `'\r\nOrigin = (0.000000000000000,0.000000000000000)\r\nPixel Size = (1.000000000000000,1.000000000000000)\r\nMetadata:\r\n  AREA_OR_POINT=Area\r\n  TIFFTAG_DATETIME=2015:06:20 01:52:30\r\n  TIFFTAG_IMAGEDESCRIPTION=Sentinel-1A SM SLC L1\r\n  TIFFTAG_SOFTWARE=Sentinel-1 IPF 002.45\r\nCorner Coordinates:\r\nUpper Left  (   0.0000000,   0.0000000) \r\nLower Left  (       0.000,   31106.000) \r\nUpper Right (   17663.000,       0.000) \r\nLower Right (   17663.000,   31106.000) \r\nCenter      (    8831.500,   15553.000) \r\nBand 1 Block=128x128 Type=Float64, ColorInterp=Undefined\r\n\r\n\r\n\r\nThings to be discussed : \r\n- Proper use of gdal coding style / naming conventions\r\n- Tests are available in autotest, are they sufficient ?\r\n- Since derived datatets are available for all datasets with at least one raster band, they are not specifically made for complex pixel type. Hence, we might want to change the driver name.\r\n- Some pixel function only make sense when there is at least one complex pixel type band. Shall we filter them ? They will work with real pixel type, but will be pretty much useless (like conj or imag).\r\n- Driver documentation html page is still to be written\r\n","created_at":"2016-07-07T11:40:32Z","updated_at":"2016-07-08T13:16:00Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ad8ee33ed0e82a5f740f8507c590abdbf0f6d4c4","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/OSGeo/gdal/pulls/142/commits","review_comments_url":"https://api.github.com/repos/OSGeo/gdal/pulls/142/comments","review_comment_url":"https://api.github.com/repos/OSGeo/gdal/pulls/comments{/number}","comments_url":"https://api.github.com/repos/OSGeo/gdal/issues/142/comments","statuses_url":"https://api.github.com/repos/OSGeo/gdal/statuses/f6aaf6dbfce9c32a571bf54d3b82d69fe9789daf","head":{"label":"jmichel-otb:enhance-complex-datasets-with-pf","ref":"enhance-complex-datasets-with-pf","sha":"f6aaf6dbfce9c32a571bf54d3b82d69fe9789daf","user":{"login":"jmichel-otb","id":10595679,"avatar_url":"https://avatars.githubusercontent.com/u/10595679?v=3","gravatar_id":"","url":"https://api.github.com/users/jmichel-otb","html_url":"https://github.com/jmichel-otb","followers_url":"https://api.github.com/users/jmichel-otb/followers","following_url":"https://api.github.com/users/jmichel-otb/following{/other_user}","gists_url":"https://api.github.com/users/jmichel-otb/gists{/gist_id}","starred_url":"https://api.github.com/users/jmichel-otb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmichel-otb/subscriptions","organizations_url":"https://api.github.com/users/jmichel-otb/orgs","repos_url":"https://api.github.com/users/jmichel-otb/repos","events_url":"https://api.github.com/users/jmichel-otb/events{/privacy}","received_events_url":"https://api.github.com/users/jmichel-otb/received_events","type":"User","site_admin":false},"repo":{"id":62560172,"name":"gdal","full_name":"jmichel-otb/gdal","owner":{"login":"jmichel-otb","id":10595679,"avatar_url":"https://avatars.githubusercontent.com/u/10595679?v=3","gravatar_id":"","url":"https://api.github.com/users/jmichel-otb","html_url":"https://github.com/jmichel-otb","followers_url":"https://api.github.com/users/jmichel-otb/followers","following_url":"https://api.github.com/users/jmichel-otb/following{/other_user}","gists_url":"https://api.github.com/users/jmichel-otb/gists{/gist_id}","starred_url":"https://api.github.com/users/jmichel-otb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmichel-otb/subscriptions","organizations_url":"https://api.github.com/users/jmichel-otb/orgs","repos_url":"https://api.github.com/users/jmichel-otb/repos","events_url":"https://api.github.com/users/jmichel-otb/events{/privacy}","received_events_url":"https://api.github.com/users/jmichel-otb/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jmichel-otb/gdal","description":"GDAL is an open source X/MIT licensed translator library for raster and vector geospatial data formats. This is a mirror of the GDAL Subversion repository.","fork":true,"url":"https://api.github.com/repos/jmichel-otb/gdal","forks_url":"https://api.github.com/repos/jmichel-otb/gdal/forks","keys_url":"https://api.github.com/repos/jmichel-otb/gdal/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jmichel-otb/gdal/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jmichel-otb/gdal/teams","hooks_url":"https://api.github.com/repos/jmichel-otb/gdal/hooks","issue_events_url":"https://api.github.com/repos/jmichel-otb/gdal/issues/events{/number}","events_url":"https://api.github.com/repos/jmichel-otb/gdal/events","assignees_url":"https://api.github.com/repos/jmichel-otb/gdal/assignees{/user}","branches_url":"https://api.github.com/repos/jmichel-otb/gdal/branches{/branch}","tags_url":"https://api.github.com/repos/jmichel-otb/gdal/tags","blobs_url":"https://api.github.com/repos/jmichel-otb/gdal/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jmichel-otb/gdal/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jmichel-otb/gdal/git/refs{/sha}","trees_url":"https://api.github.com/repos/jmichel-otb/gdal/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jmichel-otb/gdal/statuses/{sha}","languages_url":"https://api.github.com/repos/jmichel-otb/gdal/languages","stargazers_url":"https://api.github.com/repos/jmichel-otb/gdal/stargazers","contributors_url":"https://api.github.com/repos/jmichel-otb/gdal/contributors","subscribers_url":"https://api.github.com/repos/jmichel-otb/gdal/subscribers","subscription_url":"https://api.github.com/repos/jmichel-otb/gdal/subscription","commits_url":"https://api.github.com/repos/jmichel-otb/gdal/commits{/sha}","git_commits_url":"https://api.github.com/repos/jmichel-otb/gdal/git/commits{/sha}","comments_url":"https://api.github.com/repos/jmichel-otb/gdal/comments{/number}","issue_comment_url":"https://api.github.com/repos/jmichel-otb/gdal/issues/comments{/number}","contents_url":"https://api.github.com/repos/jmichel-otb/gdal/contents/{+path}","compare_url":"https://api.github.com/repos/jmichel-otb/gdal/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jmichel-otb/gdal/merges","archive_url":"https://api.github.com/repos/jmichel-otb/gdal/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jmichel-otb/gdal/downloads","issues_url":"https://api.github.com/repos/jmichel-otb/gdal/issues{/number}","pulls_url":"https://api.github.com/repos/jmichel-otb/gdal/pulls{/number}","milestones_url":"https://api.github.com/repos/jmichel-otb/gdal/milestones{/number}","notifications_url":"https://api.github.com/repos/jmichel-otb/gdal/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jmichel-otb/gdal/labels{/name}","releases_url":"https://api.github.com/repos/jmichel-otb/gdal/releases{/id}","deployments_url":"https://api.github.com/repos/jmichel-otb/gdal/deployments","created_at":"2016-07-04T12:23:05Z","updated_at":"2016-07-04T17:44:54Z","pushed_at":"2016-07-08T13:06:21Z","git_url":"git://github.com/jmichel-otb/gdal.git","ssh_url":"git@github.com:jmichel-otb/gdal.git","clone_url":"https://github.com/jmichel-otb/gdal.git","svn_url":"https://github.com/jmichel-otb/gdal","homepage":"http://www.gdal.org/","size":122508,"stargazers_count":1,"watchers_count":1,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"trunk"}},"base":{"label":"OSGeo:trunk","ref":"trunk","sha":"5c295abf51088072c72526ab40031c88013e26c6","user":{"login":"OSGeo","id":1058467,"avatar_url":"https://avatars.githubusercontent.com/u/1058467?v=3","gravatar_id":"","url":"https://api.github.com/users/OSGeo","html_url":"https://github.com/OSGeo","followers_url":"https://api.github.com/users/OSGeo/followers","following_url":"https://api.github.com/users/OSGeo/following{/other_user}","gists_url":"https://api.github.com/users/OSGeo/gists{/gist_id}","starred_url":"https://api.github.com/users/OSGeo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OSGeo/subscriptions","organizations_url":"https://api.github.com/users/OSGeo/orgs","repos_url":"https://api.github.com/users/OSGeo/repos","events_url":"https://api.github.com/users/OSGeo/events{/privacy}","received_events_url":"https://api.github.com/users/OSGeo/received_events","type":"Organization","site_admin":false},"repo":{"id":6148317,"name":"gdal","full_name":"OSGeo/gdal","owner":{"login":"OSGeo","id":1058467,"avatar_url":"https://avatars.githubusercontent.com/u/1058467?v=3","gravatar_id":"","url":"https://api.github.com/users/OSGeo","html_url":"https://github.com/OSGeo","followers_url":"https://api.github.com/users/OSGeo/followers","following_url":"https://api.github.com/users/OSGeo/following{/other_user}","gists_url":"https://api.github.com/users/OSGeo/gists{/gist_id}","starred_url":"https://api.github.com/users/OSGeo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OSGeo/subscriptions","organizations_url":"https://api.github.com/users/OSGeo/orgs","repos_url":"https://api.github.com/users/OSGeo/repos","events_url":"https://api.github.com/users/OSGeo/events{/privacy}","received_events_url":"https://api.github.com/users/OSGeo/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/OSGeo/gdal","description":"GDAL is an open source X/MIT licensed translator library for raster and vector geospatial data formats. This is a mirror of the GDAL Subversion repository.","fork":false,"url":"https://api.github.com/repos/OSGeo/gdal","forks_url":"https://api.github.com/repos/OSGeo/gdal/forks","keys_url":"https://api.github.com/repos/OSGeo/gdal/keys{/key_id}","collaborators_url":"https://api.github.com/repos/OSGeo/gdal/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/OSGeo/gdal/teams","hooks_url":"https://api.github.com/repos/OSGeo/gdal/hooks","issue_events_url":"https://api.github.com/repos/OSGeo/gdal/issues/events{/number}","events_url":"https://api.github.com/repos/OSGeo/gdal/events","assignees_url":"https://api.github.com/repos/OSGeo/gdal/assignees{/user}","branches_url":"https://api.github.com/repos/OSGeo/gdal/branches{/branch}","tags_url":"https://api.github.com/repos/OSGeo/gdal/tags","blobs_url":"https://api.github.com/repos/OSGeo/gdal/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/OSGeo/gdal/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/OSGeo/gdal/git/refs{/sha}","trees_url":"https://api.github.com/repos/OSGeo/gdal/git/trees{/sha}","statuses_url":"https://api.github.com/repos/OSGeo/gdal/statuses/{sha}","languages_url":"https://api.github.com/repos/OSGeo/gdal/languages","stargazers_url":"https://api.github.com/repos/OSGeo/gdal/stargazers","contributors_url":"https://api.github.com/repos/OSGeo/gdal/contributors","subscribers_url":"https://api.github.com/repos/OSGeo/gdal/subscribers","subscription_url":"https://api.github.com/repos/OSGeo/gdal/subscription","commits_url":"https://api.github.com/repos/OSGeo/gdal/commits{/sha}","git_commits_url":"https://api.github.com/repos/OSGeo/gdal/git/commits{/sha}","comments_url":"https://api.github.com/repos/OSGeo/gdal/comments{/number}","issue_comment_url":"https://api.github.com/repos/OSGeo/gdal/issues/comments{/number}","contents_url":"https://api.github.com/repos/OSGeo/gdal/contents/{+path}","compare_url":"https://api.github.com/repos/OSGeo/gdal/compare/{base}...{head}","merges_url":"https://api.github.com/repos/OSGeo/gdal/merges","archive_url":"https://api.github.com/repos/OSGeo/gdal/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/OSGeo/gdal/downloads","issues_url":"https://api.github.com/repos/OSGeo/gdal/issues{/number}","pulls_url":"https://api.github.com/repos/OSGeo/gdal/pulls{/number}","milestones_url":"https://api.github.com/repos/OSGeo/gdal/milestones{/number}","notifications_url":"https://api.github.com/repos/OSGeo/gdal/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/OSGeo/gdal/labels{/name}","releases_url":"https://api.github.com/repos/OSGeo/gdal/releases{/id}","deployments_url":"https://api.github.com/repos/OSGeo/gdal/deployments","created_at":"2012-10-09T21:39:58Z","updated_at":"2016-07-08T04:03:08Z","pushed_at":"2016-07-08T13:06:21Z","git_url":"git://github.com/OSGeo/gdal.git","ssh_url":"git@github.com:OSGeo/gdal.git","clone_url":"https://github.com/OSGeo/gdal.git","svn_url":"https://github.com/OSGeo/gdal","homepage":"http://www.gdal.org/","size":172413,"stargazers_count":259,"watchers_count":259,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":251,"mirror_url":null,"open_issues_count":21,"forks":251,"open_issues":21,"watchers":259,"default_branch":"trunk"}},"_links":{"self":{"href":"https://api.github.com/repos/OSGeo/gdal/pulls/142"},"html":{"href":"https://github.com/OSGeo/gdal/pull/142"},"issue":{"href":"https://api.github.com/repos/OSGeo/gdal/issues/142"},"comments":{"href":"https://api.github.com/repos/OSGeo/gdal/issues/142/comments"},"review_comments":{"href":"https://api.github.com/repos/OSGeo/gdal/pulls/142/comments"},"review_comment":{"href":"https://api.github.com/repos/OSGeo/gdal/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/OSGeo/gdal/pulls/142/commits"},"statuses":{"href":"https://api.github.com/repos/OSGeo/gdal/statuses/f6aaf6dbfce9c32a571bf54d3b82d69fe9789daf"}}}}
{"actor":{"display_login":"rouault"}}