001/* ---------------------------------------------------------------------------- 002 * This file was automatically generated by SWIG (http://www.swig.org). 003 * Version 3.0.12 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 * Creates a new {@link LayoutSpeciesReferencePlugin} object using the given parameters. 062 <p> 063 * <p> 064 * In the XML representation of an SBML document, XML namespaces are used to 065 * identify the origin of each XML construct used. XML namespaces are 066 * identified by their unique resource identifiers (URIs). The core SBML 067 * specifications stipulate the namespaces that must be used for core SBML 068 * constructs; for example, all XML elements that belong to SBML Level 3 069 * Version 1 Core must be placed in the XML namespace identified by the URI 070 * <code>'http://www.sbml.org/sbml/level3/version1/core'</code>. Individual 071 * SBML Level 3 packages define their own XML namespaces; for example, 072 * all elements belonging to the SBML Level 3 Layout Version 1 073 * package must be placed in the XML namespace 074 * <code>'http://www.sbml.org/sbml/level3/version1/layout/version1/'</code>. 075 <p> 076 * <p> 077 * The {@link SBMLNamespaces} object encapsulates SBML Level/Version/namespaces 078 * information. It is used to communicate the SBML Level, Version, and (in 079 * Level 3) packages used in addition to SBML Level 3 Core. A 080 * common approach to using libSBML's {@link SBMLNamespaces} facilities is to create an 081 * {@link SBMLNamespaces} object somewhere in a program once, then hand that object 082 * as needed to object constructors that accept {@link SBMLNamespaces} as arguments. 083 <p> 084 * @param uri the URI of the SBML Level 3 package implemented by 085 * this libSBML package extension. 086 <p> 087 * @param prefix the XML namespace prefix being used for the package. 088 <p> 089 * @param layoutns the namespaces object for the package. 090 */ public 091 LayoutSpeciesReferencePlugin(String uri, String prefix, LayoutPkgNamespaces layoutns) { 092 this(libsbmlJNI.new_LayoutSpeciesReferencePlugin__SWIG_0(uri, prefix, LayoutPkgNamespaces.getCPtr(layoutns), layoutns), true); 093 } 094 095 096/** 097 * Copy constructor. Creates a copy of this {@link SBase} object. 098 <p> 099 * @param orig the instance to copy. 100 */ public 101 LayoutSpeciesReferencePlugin(LayoutSpeciesReferencePlugin orig) { 102 this(libsbmlJNI.new_LayoutSpeciesReferencePlugin__SWIG_1(LayoutSpeciesReferencePlugin.getCPtr(orig), orig), true); 103 } 104 105 106/** 107 * Creates and returns a deep copy of this {@link LayoutSpeciesReferencePlugin} object. 108 <p> 109 * @return a (deep) copy of this {@link LayoutSpeciesReferencePlugin} object. 110 */ public 111 SBasePlugin cloneObject() { 112 long cPtr = libsbmlJNI.LayoutSpeciesReferencePlugin_cloneObject(swigCPtr, this); 113 return (cPtr == 0) ? null : new LayoutSpeciesReferencePlugin(cPtr, true); 114 } 115 116}