{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Incompatible API Changes In INTViewer 5 1","description":"Accelerate E&P application development and protect your innovation by consuming our Data and Domain APIs / Platform APIs.","lang":"en-US","meta":[{"name":"robots","content":"noindex"}],"llmstxt":{"hide":false}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"incompatible-api-changes-in-intviewer-5-1","__idx":0},"children":["Incompatible API Changes In INTViewer 5 1"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"incompatible-api-changes-in-intviewer-51","__idx":1},"children":["Incompatible API changes in INTViewer 5.1"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"a-the-types-u-and-v-of-ilayerfactory-and-iobject3dfactory-now-match-the-type-of-data-and-window-each-layer-type-is-supposed-to-use","__idx":2},"children":["A/ The types U and V of ILayerFactory and IObject3DFactory now match the type of data and window each layer type is supposed to use."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This change introduced to improve type safety was announced when ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/solutions/intviewer/intviewer-platform-and-modules/overview-of-api-changes-in-intviewer-4-5-2"},"children":["INTViewer 4.5.2 was released"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Because of this change, your INTViewer 5.0 plugins are most likely not binary compatible with 5.1 and need to be recompiled."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Example:"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The factory for ISeismicLayer was defined in INTViewer 5.0 as:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"ILayerFactory<ISeismicLayer, IData, ILayeredWindow> factory = ...\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["and is defined in INTViewer 5.1 as:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"ILayerFactory<ISeismicLayer, ISeismicData, IXSectionWindow> factory = ...\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["As a result, the following lines that used to compile no longer compile in INTViewer 5.1:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"ILayeredWindow window = ...\nIData data = ....\nISeismicLayer layer = ISeismicLayer.factory.createLayer(window, data, new NamedProps(), false)\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["and should be changed to:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"IXSectionWindow window = ...\nISeismicData data = ....\nISeismicLayer layer = ISeismicLayer.factory.createLayer(window, data, new NamedProps(), false)\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Also, the methods IVisual.setData and AbstractLayer2D.onSetData previously defined as:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"    public void setData(IData data) throws Exception;\n    protected void onSetData(IData data) throws Exception;\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["are now defined as:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"    public void setData(U data) throws Exception;\n    protected void onSetData(U data) throws Exception;\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["U being the type of IData returned by the IVisual.getData() method."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["As a result, the following lines that compiled before INTViewer 5.1 no longer compile:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"ISeismicLayer layer = ...\nIData data = ...\nlayer.setData(data)\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["and should be changed to:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"ISeismicLayer layer = ...\nISeismicData data = ...\nlayer.setData(data)\n"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"b-the-cominteractiveintviewerapiwindowsplotserviceiplotserviceprovider-interface-has-been-modified","__idx":3},"children":["B/ The com.interactive.intviewerapi.windows.PlotService.IPlotServiceProvider interface has been modified"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The create method of this interface has been changed from:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"        PlotService<V> create();\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["to"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"        PlotService<V> create(V window);\n"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"c-the-cominteractiveintviewerapidataixpmember-interface-has-been-modified","__idx":4},"children":["C/ The com.interactive.intviewerapi.data.IXpMember interface has been modified"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The getValues method of this interface has been changed from:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"public KeyRange getValues(float values[], String attributeName) throws IllegalArgumentException;\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["to"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"public KeyRange getValues(float values[], String attributeName, ILongTaskProgressMonitor monitor) throws IllegalArgumentException;\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["D/ The com.interactive.intviewerapi.crs.ICoordinateSystemChooserService interface has been modified"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"    public void addAliasEPSGCode(String uniqueProjectionName, String aliasEPSGCode);\n    public String getAliasEPSGCode(String uniqueProjectionName);\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["became"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"    public void addAliasEPSGCode(String uniqueProjectionName, String aliasEPSGCode, cgRect areaOfUse);\n    public String getAliasEPSGCode(String uniqueProjectionName, cgRect areaOfUse);\n"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"e-the-look-and-feel-of-intviewer-has-been-modified","__idx":5},"children":["E/ The look and feel of INTViewer has been modified."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This will affect the aspect of most of your Swing panels, buttons, etc. The default J/Carnac font has been changed to Arial. This could cause a few pixels shift in your J/Carnac displays."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"f-crossplot-layers-display-a-histogram-by-default","__idx":6},"children":["F/ Crossplot layers display a histogram by default"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To hide histograms when creating a cross-plot layer, use the IXpLayer.HISTOGRAM_X_VISIBLE and IXpLayer.HISTOGRAM_Y_VISIBLE properties"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Example:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"IXpWindow window = ...\nIXpData data = ...\nNamedProps props = ...\nprops.putProperty(IXpLayer.HISTOGRAM_X_VISIBLE, false);\nprops.putProperty(IXpLayer.HISTOGRAM_Y_VISIBLE, false);\nIXpLayer xpLayer = IXpLayer.factory.createLayer(window, data, props, false);\n"},"children":[]}]},"headings":[{"value":"Incompatible API Changes In INTViewer 5 1","id":"incompatible-api-changes-in-intviewer-5-1","depth":1},{"value":"Incompatible API changes in INTViewer 5.1","id":"incompatible-api-changes-in-intviewer-51","depth":2},{"value":"A/ The types U and V of ILayerFactory and IObject3DFactory now match the type of data and window each layer type is supposed to use.","id":"a-the-types-u-and-v-of-ilayerfactory-and-iobject3dfactory-now-match-the-type-of-data-and-window-each-layer-type-is-supposed-to-use","depth":3},{"value":"B/ The com.interactive.intviewerapi.windows.PlotService.IPlotServiceProvider interface has been modified","id":"b-the-cominteractiveintviewerapiwindowsplotserviceiplotserviceprovider-interface-has-been-modified","depth":3},{"value":"C/ The com.interactive.intviewerapi.data.IXpMember interface has been modified","id":"c-the-cominteractiveintviewerapidataixpmember-interface-has-been-modified","depth":3},{"value":"E/ The look and feel of INTViewer has been modified.","id":"e-the-look-and-feel-of-intviewer-has-been-modified","depth":3},{"value":"F/ Crossplot layers display a histogram by default","id":"f-crossplot-layers-display-a-histogram-by-default","depth":3}],"frontmatter":{"title":"Incompatible API Changes In INTViewer 5 1","pageId":"intviewer-platform-and-modules/incompatible-api-changes-in-intviewer-5-1","seo":{"title":"Incompatible API Changes In INTViewer 5 1"}},"lastModified":"2026-10-22T14:32:05.577Z","pagePropGetterError":{"message":"","name":""}},"slug":"/solutions/intviewer/intviewer-platform-and-modules/incompatible-api-changes-in-intviewer-5-1","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}