001/* ---------------------------------------------------------------------------- 002 * This file was automatically generated by SWIG (http://www.swig.org). 003 * Version 3.0.7 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 011public class Group extends SBase { 012 private long swigCPtr; 013 014 protected Group(long cPtr, boolean cMemoryOwn) 015 { 016 super(libsbmlJNI.Group_SWIGUpcast(cPtr), cMemoryOwn); 017 swigCPtr = cPtr; 018 } 019 020 protected static long getCPtr(Group obj) 021 { 022 return (obj == null) ? 0 : obj.swigCPtr; 023 } 024 025 protected static long getCPtrAndDisown (Group obj) 026 { 027 long ptr = 0; 028 029 if (obj != null) 030 { 031 ptr = obj.swigCPtr; 032 obj.swigCMemOwn = false; 033 } 034 035 return ptr; 036 } 037 038 protected void finalize() { 039 delete(); 040 } 041 042 public synchronized void delete() { 043 if (swigCPtr != 0) { 044 if (swigCMemOwn) { 045 swigCMemOwn = false; 046 libsbmlJNI.delete_Group(swigCPtr); 047 } 048 swigCPtr = 0; 049 } 050 super.delete(); 051 } 052 053 054/** 055 * Creates a new Group with the given level, version, and package version. 056 <p> 057 * @param level a long integer, the SBML Level to assign to this Group 058 <p> 059 * @param version a long integer, the SBML Version to assign to this Group 060 <p> 061 * @param pkgVersion a long integer, the SBML Groups Version to assign to this Group 062 */ public 063 Group(long level, long version, long pkgVersion) throws org.sbml.libsbml.SBMLConstructorException { 064 this(libsbmlJNI.new_Group__SWIG_0(level, version, pkgVersion), true); 065 } 066 067 068/** 069 * Creates a new Group with the given level, version, and package version. 070 <p> 071 * @param level a long integer, the SBML Level to assign to this Group 072 <p> 073 * @param version a long integer, the SBML Version to assign to this Group 074 <p> 075 * @param pkgVersion a long integer, the SBML Groups Version to assign to this Group 076 */ public 077 Group(long level, long version) throws org.sbml.libsbml.SBMLConstructorException { 078 this(libsbmlJNI.new_Group__SWIG_1(level, version), true); 079 } 080 081 082/** 083 * Creates a new Group with the given level, version, and package version. 084 <p> 085 * @param level a long integer, the SBML Level to assign to this Group 086 <p> 087 * @param version a long integer, the SBML Version to assign to this Group 088 <p> 089 * @param pkgVersion a long integer, the SBML Groups Version to assign to this Group 090 */ public 091 Group(long level) throws org.sbml.libsbml.SBMLConstructorException { 092 this(libsbmlJNI.new_Group__SWIG_2(level), true); 093 } 094 095 096/** 097 * Creates a new Group with the given level, version, and package version. 098 <p> 099 * @param level a long integer, the SBML Level to assign to this Group 100 <p> 101 * @param version a long integer, the SBML Version to assign to this Group 102 <p> 103 * @param pkgVersion a long integer, the SBML Groups Version to assign to this Group 104 */ public 105 Group() throws org.sbml.libsbml.SBMLConstructorException { 106 this(libsbmlJNI.new_Group__SWIG_3(), true); 107 } 108 109 110/** 111 * Creates a new Group with the given {@link GroupsPkgNamespaces} object. 112 <p> 113 * @param groupsns the {@link GroupsPkgNamespaces} object 114 */ public 115 Group(GroupsPkgNamespaces groupsns) throws org.sbml.libsbml.SBMLConstructorException { 116 this(libsbmlJNI.new_Group__SWIG_4(GroupsPkgNamespaces.getCPtr(groupsns), groupsns), true); 117 } 118 119 120/** 121 * Copy constructor for Group. 122 <p> 123 * @param orig; the Group instance to copy. 124 */ public 125 Group(Group orig) throws org.sbml.libsbml.SBMLConstructorException { 126 this(libsbmlJNI.new_Group__SWIG_5(Group.getCPtr(orig), orig), true); 127 } 128 129 130/** 131 * Creates and returns a deep copy of this Group object. 132 <p> 133 * @return a (deep) copy of this Group object. 134 */ public 135 Group cloneObject() { 136 long cPtr = libsbmlJNI.Group_cloneObject(swigCPtr, this); 137 return (cPtr == 0) ? null : new Group(cPtr, true); 138 } 139 140 141/** 142 * Returns the value of the 'id' attribute of this Group. 143 <p> 144 * @return the value of the 'id' attribute of this Group as a string. 145 */ public 146 String getId() { 147 return libsbmlJNI.Group_getId(swigCPtr, this); 148 } 149 150 151/** 152 * Predicate returning <code>true</code> or <code>false</code> depending on whether this 153 * Group's 'id' attribute has been set. 154 <p> 155 * @return <code>true</code> if this Group's 'id' attribute has been set, 156 * otherwise <code>false</code> is returned. 157 */ public 158 boolean isSetId() { 159 return libsbmlJNI.Group_isSetId(swigCPtr, this); 160 } 161 162 163/** 164 * Sets the value of the 'id' attribute of this Group. 165 <p> 166 * @param id; String value of the 'id' attribute to be set 167 <p> 168 * @return integer value indicating success/failure of the 169 * function. The possible values 170 * returned by this function are: 171 * <ul> 172 * <li> LIBSBML_OPERATION_SUCCESS 173 * <li> LIBSBML_INVALID_ATTRIBUTE_VALUE 174 * </ul> 175 */ public 176 int setId(String id) { 177 return libsbmlJNI.Group_setId(swigCPtr, this, id); 178 } 179 180 181/** 182 * Unsets the value of the 'id' attribute of this Group. 183 <p> 184 * @return integer value indicating success/failure of the 185 * function. The possible values 186 * returned by this function are: 187 * <ul> 188 * <li> LIBSBML_OPERATION_SUCCESS 189 * <li> LIBSBML_OPERATION_FAILED 190 * </ul> 191 */ public 192 int unsetId() { 193 return libsbmlJNI.Group_unsetId(swigCPtr, this); 194 } 195 196 197/** 198 * Returns the value of the 'name' attribute of this Group. 199 <p> 200 * @return the value of the 'name' attribute of this Group as a string. 201 */ public 202 String getName() { 203 return libsbmlJNI.Group_getName(swigCPtr, this); 204 } 205 206 207/** 208 * Predicate returning <code>true</code> or <code>false</code> depending on whether this 209 * Group's 'name' attribute has been set. 210 <p> 211 * <em>Some words of explanation about the</em> 212<code>set</code>/<code>unset</code>/<code>isSet</code> <em>methods</em>: 213The SBML specifications define certain attributes on some classes of 214objects as being optional. This requires an application to be careful 215about the distinction between two cases when reading a model: (1) a given 216attribute has <em>never</em> been set to a value, and therefore should be 217assumed to have the SBML-defined default value if one exists, and (2) a 218given attribute has been set to a value, but the value happens to be an 219empty string. The situation can be ambiguous when reading a model from a 220file or data stream and then examining the data objects that libSBML 221constructs as a result. LibSBML supports these distinctions by providing 222methods to set, unset, and query the status of attributes that are 223optional. The methods have names of the form <code>set</code><em><span 224class="placeholder">Attribute</span></em><code>(...)</code>, 225<code>unset</code><em><span 226class="placeholder">Attribute</span></em><code>()</code>, and 227<code>isSet</code><em><span 228class="placeholder">Attribute</span></em><code>()</code>, where <em><span 229class="placeholder">Attribute</span></em> is the the name of the optional 230attribute in question. 231 232 <p> 233 * @return <code>true</code> if this Group's 'name' attribute has been set, 234 * otherwise <code>false</code> is returned. 235 */ public 236 boolean isSetName() { 237 return libsbmlJNI.Group_isSetName(swigCPtr, this); 238 } 239 240 241/** 242 * Sets the value of the 'name' attribute of this Group. 243 <p> 244 * The string in <code>name</code> is copied. 245 <p> 246 * <em>Some words of explanation about the</em> 247<code>set</code>/<code>unset</code>/<code>isSet</code> <em>methods</em>: 248The SBML specifications define certain attributes on some classes of 249objects as being optional. This requires an application to be careful 250about the distinction between two cases when reading a model: (1) a given 251attribute has <em>never</em> been set to a value, and therefore should be 252assumed to have the SBML-defined default value if one exists, and (2) a 253given attribute has been set to a value, but the value happens to be an 254empty string. The situation can be ambiguous when reading a model from a 255file or data stream and then examining the data objects that libSBML 256constructs as a result. LibSBML supports these distinctions by providing 257methods to set, unset, and query the status of attributes that are 258optional. The methods have names of the form <code>set</code><em><span 259class="placeholder">Attribute</span></em><code>(...)</code>, 260<code>unset</code><em><span 261class="placeholder">Attribute</span></em><code>()</code>, and 262<code>isSet</code><em><span 263class="placeholder">Attribute</span></em><code>()</code>, where <em><span 264class="placeholder">Attribute</span></em> is the the name of the optional 265attribute in question. 266 267 <p> 268 * @param name; String value of the 'name' attribute to be set 269 <p> 270 * @return integer value indicating success/failure of the 271 * function. The possible values 272 * returned by this function are: 273 * <ul> 274 * <li> LIBSBML_OPERATION_SUCCESS 275 * <li> LIBSBML_INVALID_ATTRIBUTE_VALUE 276 * </ul> 277 */ public 278 int setName(String name) { 279 return libsbmlJNI.Group_setName(swigCPtr, this, name); 280 } 281 282 283/** 284 * Unsets the value of the 'name' attribute of this Group. 285 <p> 286 * <em>Some words of explanation about the</em> 287<code>set</code>/<code>unset</code>/<code>isSet</code> <em>methods</em>: 288The SBML specifications define certain attributes on some classes of 289objects as being optional. This requires an application to be careful 290about the distinction between two cases when reading a model: (1) a given 291attribute has <em>never</em> been set to a value, and therefore should be 292assumed to have the SBML-defined default value if one exists, and (2) a 293given attribute has been set to a value, but the value happens to be an 294empty string. The situation can be ambiguous when reading a model from a 295file or data stream and then examining the data objects that libSBML 296constructs as a result. LibSBML supports these distinctions by providing 297methods to set, unset, and query the status of attributes that are 298optional. The methods have names of the form <code>set</code><em><span 299class="placeholder">Attribute</span></em><code>(...)</code>, 300<code>unset</code><em><span 301class="placeholder">Attribute</span></em><code>()</code>, and 302<code>isSet</code><em><span 303class="placeholder">Attribute</span></em><code>()</code>, where <em><span 304class="placeholder">Attribute</span></em> is the the name of the optional 305attribute in question. 306 307 <p> 308 * @return integer value indicating success/failure of the 309 * function. The possible values 310 * returned by this function are: 311 * <ul> 312 * <li> LIBSBML_OPERATION_SUCCESS 313 * <li> LIBSBML_OPERATION_FAILED 314 * </ul> 315 */ public 316 int unsetName() { 317 return libsbmlJNI.Group_unsetName(swigCPtr, this); 318 } 319 320 321/** 322 * Returns the value of the 'kind' attribute of this Group. 323 <p> 324 * @return the kind of this Group. 325 */ public 326 int getKind() { 327 return libsbmlJNI.Group_getKind(swigCPtr, this); 328 } 329 330 331/** 332 * Predicate returning <code>true</code> or <code>false</code> depending on whether this 333 * Group's 'kind' attribute has been set. 334 <p> 335 * <em>Some words of explanation about the</em> 336<code>set</code>/<code>unset</code>/<code>isSet</code> <em>methods</em>: 337The SBML specifications define certain attributes on some classes of 338objects as being optional. This requires an application to be careful 339about the distinction between two cases when reading a model: (1) a given 340attribute has <em>never</em> been set to a value, and therefore should be 341assumed to have the SBML-defined default value if one exists, and (2) a 342given attribute has been set to a value, but the value happens to be an 343empty string. The situation can be ambiguous when reading a model from a 344file or data stream and then examining the data objects that libSBML 345constructs as a result. LibSBML supports these distinctions by providing 346methods to set, unset, and query the status of attributes that are 347optional. The methods have names of the form <code>set</code><em><span 348class="placeholder">Attribute</span></em><code>(...)</code>, 349<code>unset</code><em><span 350class="placeholder">Attribute</span></em><code>()</code>, and 351<code>isSet</code><em><span 352class="placeholder">Attribute</span></em><code>()</code>, where <em><span 353class="placeholder">Attribute</span></em> is the the name of the optional 354attribute in question. 355 356 <p> 357 * @return <code>true</code> if this Group's 'kind' attribute has been set, 358 * otherwise <code>false</code> is returned. 359 */ public 360 boolean isSetKind() { 361 return libsbmlJNI.Group_isSetKind(swigCPtr, this); 362 } 363 364 365/** 366 * Sets the value of the 'kind' attribute of this Group. 367 <p> 368 * The string in <code>kind</code> is copied. 369 <p> 370 * <em>Some words of explanation about the</em> 371<code>set</code>/<code>unset</code>/<code>isSet</code> <em>methods</em>: 372The SBML specifications define certain attributes on some classes of 373objects as being optional. This requires an application to be careful 374about the distinction between two cases when reading a model: (1) a given 375attribute has <em>never</em> been set to a value, and therefore should be 376assumed to have the SBML-defined default value if one exists, and (2) a 377given attribute has been set to a value, but the value happens to be an 378empty string. The situation can be ambiguous when reading a model from a 379file or data stream and then examining the data objects that libSBML 380constructs as a result. LibSBML supports these distinctions by providing 381methods to set, unset, and query the status of attributes that are 382optional. The methods have names of the form <code>set</code><em><span 383class="placeholder">Attribute</span></em><code>(...)</code>, 384<code>unset</code><em><span 385class="placeholder">Attribute</span></em><code>()</code>, and 386<code>isSet</code><em><span 387class="placeholder">Attribute</span></em><code>()</code>, where <em><span 388class="placeholder">Attribute</span></em> is the the name of the optional 389attribute in question. 390 391 <p> 392 * @param kind the new kind for the Group 393 <p> 394 * @return integer value indicating success/failure of the 395 * function. The possible values 396 * returned by this function are: 397 * <ul> 398 * <li> LIBSBML_OPERATION_SUCCESS 399 * <li> LIBSBML_INVALID_ATTRIBUTE_VALUE 400 * </ul> 401 */ public 402 int setKind(int kind) { 403 return libsbmlJNI.Group_setKind(swigCPtr, this, kind); 404 } 405 406 407/** 408 * Unsets the value of the 'kind' attribute of this Group. 409 <p> 410 * @return integer value indicating success/failure of the 411 * function. The possible values 412 * returned by this function are: 413 * <ul> 414 * <li> LIBSBML_OPERATION_SUCCESS 415 * <li> LIBSBML_OPERATION_FAILED 416 * </ul> 417 */ public 418 int unsetKind() { 419 return libsbmlJNI.Group_unsetKind(swigCPtr, this); 420 } 421 422 423/** 424 * Returns the {@link ListOf} object that holds all members. 425 <p> 426 * @return the {@link ListOf} object that holds all members. 427 */ public 428 ListOfMembers getListOfMembers() { 429 long cPtr = libsbmlJNI.Group_getListOfMembers(swigCPtr, this); 430 return (cPtr == 0) ? null : new ListOfMembers(cPtr, false); 431 } 432 433 434/** 435 * Returns the member with the given index. 436 * If the index is invalid, null is returned. 437 <p> 438 * @param n the index number of the Member to get. 439 <p> 440 * @return the nth Member in the ListOfMembers. 441 */ public 442 Member getMember(long n) { 443 long cPtr = libsbmlJNI.Group_getMember__SWIG_0(swigCPtr, this, n); 444 return (cPtr == 0) ? null : new Member(cPtr, false); 445 } 446 447 448/** 449 * Returns the member with the given symbol. 450 * If the index is invalid, null is returned. 451 <p> 452 * @param symbol a string representing the symbol attribute 453 * of the Member to get. 454 <p> 455 * @return Member in the ListOfMembers with the given symbol 456 * or null if no such Member exists. 457 */ public 458 Member getMember(String symbol) { 459 long cPtr = libsbmlJNI.Group_getMember__SWIG_2(swigCPtr, this, symbol); 460 return (cPtr == 0) ? null : new Member(cPtr, false); 461 } 462 463 464/** 465 * Adds a copy of the given Member objcect to the list of members. 466 <p> 467 * @param member the Member object to be added to the list of 468 * members. 469 <p> 470 * @return integer value indicating success/failure of the 471 * function. The possible values 472 * returned by this function are: 473 * <ul> 474 * <li> LIBSBML_OPERATION_SUCCESS 475 * </ul> 476 */ public 477 int addMember(Member member) { 478 return libsbmlJNI.Group_addMember(swigCPtr, this, Member.getCPtr(member), member); 479 } 480 481 482/** 483 * Returns the number of members for this group. 484 <p> 485 * @return the number of members for this group. 486 */ public 487 long getNumMembers() { 488 return libsbmlJNI.Group_getNumMembers(swigCPtr, this); 489 } 490 491 492/** 493 * Creates a Member object, adds it to the end of the 494 * member objects list and returns a pointer to the newly 495 * created object. 496 <p> 497 * @return a newly created Member object 498 */ public 499 Member createMember() { 500 long cPtr = libsbmlJNI.Group_createMember(swigCPtr, this); 501 return (cPtr == 0) ? null : new Member(cPtr, false); 502 } 503 504 505/** 506 * Removes the member with the given index from the group. 507 * A pointer to the member that was removed is returned. 508 * If no member has been removed, null is returned. 509 <p> 510 * @param n the index of the Member object to remove 511 <p> 512 * @return the Member object removed. As mentioned above, 513 * the caller owns the returned object. null is returned if 514 * the given index is out of range. 515 */ public 516 Member removeMember(long index) { 517 long cPtr = libsbmlJNI.Group_removeMember__SWIG_0(swigCPtr, this, index); 518 return (cPtr == 0) ? null : new Member(cPtr, true); 519 } 520 521 522/** 523 * Removes the member with the given symbol from the group. 524 * A pointer to the member that was removed is returned. 525 * If no member has been removed, null is returned. 526 <p> 527 * @param symbol the symbol attribute of the Member object to remove 528 <p> 529 * @return the Member object removed. As mentioned above, 530 * the caller owns the returned object. null is returned if 531 * the given index is out of range. 532 */ public 533 Member removeMember(String symbol) { 534 long cPtr = libsbmlJNI.Group_removeMember__SWIG_1(swigCPtr, this, symbol); 535 return (cPtr == 0) ? null : new Member(cPtr, true); 536 } 537 538 539/** 540 * Returns the 'ListOfMemberConstraints' in this Group object. 541 <p> 542 * @return the 'ListOfMemberConstraints' attribute of this Group. 543 */ public 544 ListOfMemberConstraints getListOfMemberConstraints() { 545 long cPtr = libsbmlJNI.Group_getListOfMemberConstraints__SWIG_0(swigCPtr, this); 546 return (cPtr == 0) ? null : new ListOfMemberConstraints(cPtr, false); 547 } 548 549 550/** 551 * Get a MemberConstraint from the ListOfMemberConstraints. 552 <p> 553 * @param n the index number of the MemberConstraint to get. 554 <p> 555 * @return the nth MemberConstraint in the ListOfMemberConstraints within this Group. 556 <p> 557 * @see #getNumMemberConstraints() 558 */ public 559 MemberConstraint getMemberConstraint(long n) { 560 long cPtr = libsbmlJNI.Group_getMemberConstraint__SWIG_0(swigCPtr, this, n); 561 return (cPtr == 0) ? null : new MemberConstraint(cPtr, false); 562 } 563 564 565/** 566 * Get a MemberConstraint from the ListOfMemberConstraints 567 * based on its identifier. 568 <p> 569 * @param sid a string representing the identifier 570 * of the MemberConstraint to get. 571 <p> 572 * @return the MemberConstraint in the ListOfMemberConstraints 573 * with the given id or null if no such 574 * MemberConstraint exists. 575 <p> 576 * 577 * @see #getNumMemberConstraints() 578 <p> 579 * @see #getMemberConstraint(long n) 580 */ public 581 MemberConstraint getMemberConstraint(String sid) { 582 long cPtr = libsbmlJNI.Group_getMemberConstraint__SWIG_2(swigCPtr, this, sid); 583 return (cPtr == 0) ? null : new MemberConstraint(cPtr, false); 584 } 585 586 587/** 588 * Adds a copy the given 'MemberConstraint' to this Group. 589 <p> 590 * @param mc; the MemberConstraint object to add 591 <p> 592 * @return integer value indicating success/failure of the 593 * function. The possible values 594 * returned by this function are: 595 * <ul> 596 * <li> LIBSBML_OPERATION_SUCCESS 597 * <li> LIBSBML_INVALID_ATTRIBUTE_VALUE 598 * </ul> 599 */ public 600 int addMemberConstraint(MemberConstraint mc) { 601 return libsbmlJNI.Group_addMemberConstraint(swigCPtr, this, MemberConstraint.getCPtr(mc), mc); 602 } 603 604 605/** 606 * Get the number of MemberConstraint objects in this Group. 607 <p> 608 * @return the number of MemberConstraint objects in this Group 609 */ public 610 long getNumMemberConstraints() { 611 return libsbmlJNI.Group_getNumMemberConstraints(swigCPtr, this); 612 } 613 614 615/** 616 * Creates a new MemberConstraint object, adds it to this Groups 617 * ListOfMemberConstraints and returns the MemberConstraint object created. 618 <p> 619 * @return a new MemberConstraint object instance 620 <p> 621 * @see #addMemberConstraint( MemberConstraint mc) 622 */ public 623 MemberConstraint createMemberConstraint() { 624 long cPtr = libsbmlJNI.Group_createMemberConstraint(swigCPtr, this); 625 return (cPtr == 0) ? null : new MemberConstraint(cPtr, false); 626 } 627 628 629/** 630 * Removes the nth MemberConstraint from the ListOfMemberConstraints within this Group. 631 * and returns a pointer to it. 632 <p> 633 * The caller owns the returned item and is responsible for deleting it. 634 <p> 635 * @param n the index of the MemberConstraint to remove. 636 <p> 637 * @see #getNumMemberConstraints() 638 */ public 639 MemberConstraint removeMemberConstraint(long n) { 640 long cPtr = libsbmlJNI.Group_removeMemberConstraint__SWIG_0(swigCPtr, this, n); 641 return (cPtr == 0) ? null : new MemberConstraint(cPtr, true); 642 } 643 644 645/** 646 * Removes the MemberConstraint with the given identifier from the ListOfMemberConstraints within this Group 647 * and returns a pointer to it. 648 <p> 649 * The caller owns the returned item and is responsible for deleting it. 650 * If none of the items in this list have the identifier <code>sid</code>, then 651 * <code>null</code> is returned. 652 <p> 653 * @param sid the identifier of the MemberConstraint to remove. 654 <p> 655 * @return the MemberConstraint removed. As mentioned above, the caller owns the 656 * returned item. 657 */ public 658 MemberConstraint removeMemberConstraint(String sid) { 659 long cPtr = libsbmlJNI.Group_removeMemberConstraint__SWIG_1(swigCPtr, this, sid); 660 return (cPtr == 0) ? null : new MemberConstraint(cPtr, true); 661 } 662 663 664/** 665 * Subclasses should override this method to return XML element name of 666 * this SBML object. 667 <p> 668 * @return the string of the name of this element. 669 */ public 670 String getElementName() { 671 return libsbmlJNI.Group_getElementName(swigCPtr, this); 672 } 673 674 675/** 676 * @return the typecode (int) of this SBML object or SBML_UNKNOWN 677 * (default). 678 <p> 679 * @see #getElementName() 680 */ public 681 int getTypeCode() { 682 return libsbmlJNI.Group_getTypeCode(swigCPtr, this); 683 } 684 685 public void connectToChild() { 686 libsbmlJNI.Group_connectToChild(swigCPtr, this); 687 } 688 689 690/** * @internal */ public 691 void enablePackageInternal(String pkgURI, String pkgPrefix, boolean flag) { 692 libsbmlJNI.Group_enablePackageInternal(swigCPtr, this, pkgURI, pkgPrefix, flag); 693 } 694 695 696/** * @internal */ public 697 boolean hasRequiredAttributes() { 698 return libsbmlJNI.Group_hasRequiredAttributes(swigCPtr, this); 699 } 700 701 702/** * @internal */ public 703 boolean hasRequiredElements() { 704 return libsbmlJNI.Group_hasRequiredElements(swigCPtr, this); 705 } 706 707}