<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none"><!--P{margin-top:0;margin-bottom:0;} .ms-cui-menu {background-color:#ffffff;border:1px rgb(171, 171, 171) solid;font-family:"Segoe UI WPC","Segoe UI",Tahoma,"Microsoft Sans Serif",Verdana,sans-serif;font-size:12pt;color:rgb(51, 51, 51);} .ms-cui-menusection-title {display:none;} .ms-cui-ctl {vertical-align:text-top;text-decoration:none;color:rgb(51, 51, 51);} .ms-cui-ctl-on {background-color:rgb(223, 237, 250);opacity: 0.8;} .ms-cui-img-cont-float {display:inline-block;margin-top:2px} .ms-cui-smenu-inner {padding-top:0px;} .ms-owa-paste-option-icon {margin: 2px 4px 0px 4px;vertical-align:sub;padding-bottom: 2px;display:inline-block;} .ms-rtePasteFlyout-option:hover {background-color:rgb(223, 237, 250) !important;opacity:1 !important;} .ms-rtePasteFlyout-option {padding:8px 4px 8px 4px;outline:none;} .ms-cui-menusection {float:left; width:85px;height:24px;overflow:hidden}.wf {speak:none; font-weight:normal; font-variant:normal; text-transform:none; -webkit-font-smoothing:antialiased; vertical-align:middle; display:inline-block;}.wf-family-owa {font-family:'o365Icons'}@font-face {  font-family:'o365IconsIE8';  src:url('prem/15.0.913.22/resources/styles/office365icons.ie8.eot?#iefix') format('embedded-opentype'),         url('prem/15.0.913.22/resources/styles/office365icons.ie8.woff') format('woff'),         url('prem/15.0.913.22/resources/styles/office365icons.ie8.ttf') format('truetype');  font-weight:normal;  font-style:normal;}@font-face {  font-family:'o365IconsMouse';  src:url('prem/15.0.913.22/resources/styles/office365icons.mouse.eot?#iefix') format('embedded-opentype'),         url('prem/15.0.913.22/resources/styles/office365icons.mouse.woff') format('woff'),         url('prem/15.0.913.22/resources/styles/office365icons.mouse.ttf') format('truetype');  font-weight:normal;  font-style:normal;}.wf-family-owa {font-family:'o365IconsMouse'}.ie8 .wf-family-owa {font-family:'o365IconsIE8'}.ie8 .wf-owa-play-large:before {content:'\e254';}.notIE8 .wf-owa-play-large:before {content:'\e054';}.ie8 .wf-owa-play-large {color:#FFFFFF/*$WFWhiteColor*/;}.notIE8 .wf-owa-play-large {border-color:#FFFFFF/*$WFWhiteColor*/; width:1.4em; height:1.4em; border-width:.1em; border-style:solid; border-radius:.8em; text-align:center; box-sizing:border-box; -moz-box-sizing:border-box; padding:0.1em; color:#FFFFFF/*$WFWhiteColor*/;}.ie8 .wf-size-play-large {width:40px; height:40px; font-size:30px}.notIE8 .wf-size-play-large {width:40px; height:40px; font-size:30px}--></style>
</head>
<body dir="ltr">
<div style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>Hi Martin,</p>
<p> </p>
<p>Thank you very much for your feedback. These issues are very strong arguments for creating an OGR plugin, indeed.</p>
<p> </p>
<p>Best regards,</p>
<p>Sverre Jonassen</p>
<p> </p>
<p></p>
<div style="color: rgb(40, 40, 40);">
<hr tabindex="-1" style="width: 98%; display: inline-block;">
<div id="divRplyFwdMsg" dir="ltr"><font color="#000000" face="Calibri, sans-serif" style="font-size: 11pt;"><b>Fra:</b> Martin Dobias <wonder.sk@gmail.com><br>
<b>Sendt:</b> 29. januar 2015 12:20<br>
<b>Til:</b> Sverre Jonassen<br>
<b>Kopi:</b> qgis-developer@lists.osgeo.org<br>
<b>Emne:</b> Re: [Qgis-developer] Best practice for a new Vector Data Provider</font>
<div> </div>
</div>
<div>
<div dir="ltr">Hi<br>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Wed, Jan 28, 2015 at 7:05 PM, Sverre Jonassen <span dir="ltr">
<<a href="mailto:sverre.jonassen@norkart.no" target="_blank">sverre.jonassen@norkart.no</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;">
<div lang="NO-BOK">
<div>
<p class="MsoNormal"><span style="font-family: Arial,sans-serif; font-size: 10pt;"> </span><br>
</p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: "Arial",sans-serif; font-size: 10pt;">A fourth option would be to create a plugin for OGR. This is, however, not a good solution for me because I would run a high risk of data conversion errors. Our
 format is much more similar to the QGIS internal geodata model than to the OGR geodata model.<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: "Arial",sans-serif; font-size: 10pt;"><u></u> </span></p>
</div>
</div>
</blockquote>
<div> </div>
<div>I would also suggest implementing OGR driver for your data format. If you decide to implement a c++ provider for QGIS, you may end up with some challenges. Provider for a proprietary data format is not likely to be accepted to QGIS source tree. That implies
 you would need to compile and ship the provider by yourself. The binary compatibility between QGIS releases is not guaranteed - that means you would need to compile the provider for all supported releases and for all supported platforms (at least win32 and
 win64).</div>
<div><br>
</div>
<div>Often a good option is to just have custom Python plugin in QGIS for loading/handling of a specific OGR driver where simple file chooser dialog is not enough.</div>
<div><br>
</div>
<div>Btw. I don't see many differences between QGIS geodata model and OGR geodata model - in fact the one in QGIS is meant to be similar to the one of OGR.</div>
<div><br>
</div>
<div>Regards</div>
<div>Martin</div>
<div><br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>