001/* ----------------------------------------------------------------------------
002 * This file was automatically generated by SWIG (http://www.swig.org).
003 * Version 3.0.8
004 *
005 * Do not make changes to this file unless you know what you are doing--modify
006 * the SWIG interface file instead.
007 * ----------------------------------------------------------------------------- */
008
009package org.sbml.libsbml;
010
011/** 
012 * <span class="pkg-marker pkg-color-layout"><a href="group__layout.html">layout</a></span>
013
014 Extension of {@link SpeciesReference}.
015 */
016
017public class LayoutSpeciesReferencePlugin extends SBasePlugin {
018   private long swigCPtr;
019
020   protected LayoutSpeciesReferencePlugin(long cPtr, boolean cMemoryOwn)
021   {
022     super(libsbmlJNI.LayoutSpeciesReferencePlugin_SWIGUpcast(cPtr), cMemoryOwn);
023     swigCPtr = cPtr;
024   }
025
026   protected static long getCPtr(LayoutSpeciesReferencePlugin obj)
027   {
028     return (obj == null) ? 0 : obj.swigCPtr;
029   }
030
031   protected static long getCPtrAndDisown (LayoutSpeciesReferencePlugin obj)
032   {
033     long ptr = 0;
034
035     if (obj != null)
036     {
037       ptr             = obj.swigCPtr;
038       obj.swigCMemOwn = false;
039     }
040
041     return ptr;
042   }
043
044  protected void finalize() {
045    delete();
046  }
047
048  public synchronized void delete() {
049    if (swigCPtr != 0) {
050      if (swigCMemOwn) {
051        swigCMemOwn = false;
052        libsbmlJNI.delete_LayoutSpeciesReferencePlugin(swigCPtr);
053      }
054      swigCPtr = 0;
055    }
056    super.delete();
057  }
058
059  
060/**
061   * Constructor
062   */ public
063 LayoutSpeciesReferencePlugin(String uri, String prefix, LayoutPkgNamespaces layoutns) {
064    this(libsbmlJNI.new_LayoutSpeciesReferencePlugin__SWIG_0(uri, prefix, LayoutPkgNamespaces.getCPtr(layoutns), layoutns), true);
065  }
066
067  
068/**
069   * Copy constructor. Creates a copy of this {@link SBase} object.
070   */ public
071 LayoutSpeciesReferencePlugin(LayoutSpeciesReferencePlugin orig) {
072    this(libsbmlJNI.new_LayoutSpeciesReferencePlugin__SWIG_1(LayoutSpeciesReferencePlugin.getCPtr(orig), orig), true);
073  }
074
075  
076/**
077   * Creates and returns a deep copy of this {@link LayoutSpeciesReferencePlugin} object.
078   <p>
079   * @return a (deep) copy of this {@link LayoutSpeciesReferencePlugin} object
080   */ public
081 SBasePlugin cloneObject() {
082    long cPtr = libsbmlJNI.LayoutSpeciesReferencePlugin_cloneObject(swigCPtr, this);
083    return (cPtr == 0) ? null : new LayoutSpeciesReferencePlugin(cPtr, true);
084  }
085
086}