1 /**
2  * @file SedSubPlot.h
3  * @brief Definition of the SedSubPlot class.
4  * @author DEVISER
5  *
6  * <!--------------------------------------------------------------------------
7  * This file is part of libSEDML. Please visit http://sed-ml.org for more
8  * information about SED-ML. The latest version of libSEDML can be found on
9  * github: https://github.com/fbergmann/libSEDML/
10  *
11 
12  * Copyright (c) 2013-2019, Frank T. Bergmann
13  * All rights reserved.
14  *
15 
16  * Redistribution and use in source and binary forms, with or without
17  * modification, are permitted provided that the following conditions are met:
18  *
19 
20  * 1. Redistributions of source code must retain the above copyright notice,
21  * this
22  * list of conditions and the following disclaimer.
23  * 2. Redistributions in binary form must reproduce the above copyright notice,
24  * this list of conditions and the following disclaimer in the documentation
25  * and/or other materials provided with the distribution.
26  *
27  * This library is free software; you can redistribute it and/or modify it
28  * under the terms of the GNU Lesser General Public License as published by the
29  * Free Software Foundation. A copy of the license agreement is provided in the
30  * file named "LICENSE.txt" included with this software distribution and also
31  * available online as http://sbml.org/software/libsbml/license.html
32  * ------------------------------------------------------------------------ -->
33  *
34  * @class SedSubPlot
35  * @sbmlbrief{sedml} TODO:Definition of the SedSubPlot class.
36  */
37 
38 
39 #ifndef SedSubPlot_H__
40 #define SedSubPlot_H__
41 
42 
43 #include <sedml/common/extern.h>
44 #include <sedml/common/sedmlfwd.h>
45 
46 
47 #ifdef __cplusplus
48 
49 
50 #include <string>
51 
52 
53 #include <sedml/SedBase.h>
54 #include <sbml/common/libsbml-namespace.h>
55 
56 
57 LIBSEDML_CPP_NAMESPACE_BEGIN
58 
59 
60 class LIBSEDML_EXTERN SedSubPlot : public SedBase
61 {
62 protected:
63 
64   /** @cond doxygenLibSEDMLInternal */
65 
66   std::string mPlot;
67   int mRow;
68   bool mIsSetRow;
69   int mCol;
70   bool mIsSetCol;
71   int mRowSpan;
72   bool mIsSetRowSpan;
73   int mColSpan;
74   bool mIsSetColSpan;
75 
76   /** @endcond */
77 
78 public:
79 
80   /**
81    * Creates a new SedSubPlot using the given SED-ML Level and @ p version
82    * values.
83    *
84    * @param level an unsigned int, the SED-ML Level to assign to this
85    * SedSubPlot.
86    *
87    * @param version an unsigned int, the SED-ML Version to assign to this
88    * SedSubPlot.
89    *
90    * @copydetails doc_note_setting_lv_pkg
91    */
92   SedSubPlot(unsigned int level = SEDML_DEFAULT_LEVEL,
93              unsigned int version = SEDML_DEFAULT_VERSION);
94 
95 
96   /**
97    * Creates a new SedSubPlot using the given SedNamespaces object @p sedmlns.
98    *
99    * @param sedmlns the SedNamespaces object.
100    *
101    * @copydetails doc_note_setting_lv_pkg
102    */
103   SedSubPlot(SedNamespaces *sedmlns);
104 
105 
106   /**
107    * Copy constructor for SedSubPlot.
108    *
109    * @param orig the SedSubPlot instance to copy.
110    */
111   SedSubPlot(const SedSubPlot& orig);
112 
113 
114   /**
115    * Assignment operator for SedSubPlot.
116    *
117    * @param rhs the SedSubPlot object whose values are to be used as the basis
118    * of the assignment.
119    */
120   SedSubPlot& operator=(const SedSubPlot& rhs);
121 
122 
123   /**
124    * Creates and returns a deep copy of this SedSubPlot object.
125    *
126    * @return a (deep) copy of this SedSubPlot object.
127    */
128   virtual SedSubPlot* clone() const;
129 
130 
131   /**
132    * Destructor for SedSubPlot.
133    */
134   virtual ~SedSubPlot();
135 
136 
137   /**
138    * Returns the value of the "plot" attribute of this SedSubPlot.
139    *
140    * @return the value of the "plot" attribute of this SedSubPlot as a string.
141    */
142   const std::string& getPlot() const;
143 
144 
145   /**
146    * Returns the value of the "row" attribute of this SedSubPlot.
147    *
148    * @return the value of the "row" attribute of this SedSubPlot as a integer.
149    */
150   int getRow() const;
151 
152 
153   /**
154    * Returns the value of the "col" attribute of this SedSubPlot.
155    *
156    * @return the value of the "col" attribute of this SedSubPlot as a integer.
157    */
158   int getCol() const;
159 
160 
161   /**
162    * Returns the value of the "rowSpan" attribute of this SedSubPlot.
163    *
164    * @return the value of the "rowSpan" attribute of this SedSubPlot as a
165    * integer.
166    */
167   int getRowSpan() const;
168 
169 
170   /**
171    * Returns the value of the "colSpan" attribute of this SedSubPlot.
172    *
173    * @return the value of the "colSpan" attribute of this SedSubPlot as a
174    * integer.
175    */
176   int getColSpan() const;
177 
178 
179   /**
180    * Predicate returning @c true if this SedSubPlot's "plot" attribute is set.
181    *
182    * @return @c true if this SedSubPlot's "plot" attribute has been set,
183    * otherwise @c false is returned.
184    */
185   bool isSetPlot() const;
186 
187 
188   /**
189    * Predicate returning @c true if this SedSubPlot's "row" attribute is set.
190    *
191    * @return @c true if this SedSubPlot's "row" attribute has been set,
192    * otherwise @c false is returned.
193    */
194   bool isSetRow() const;
195 
196 
197   /**
198    * Predicate returning @c true if this SedSubPlot's "col" attribute is set.
199    *
200    * @return @c true if this SedSubPlot's "col" attribute has been set,
201    * otherwise @c false is returned.
202    */
203   bool isSetCol() const;
204 
205 
206   /**
207    * Predicate returning @c true if this SedSubPlot's "rowSpan" attribute is
208    * set.
209    *
210    * @return @c true if this SedSubPlot's "rowSpan" attribute has been set,
211    * otherwise @c false is returned.
212    */
213   bool isSetRowSpan() const;
214 
215 
216   /**
217    * Predicate returning @c true if this SedSubPlot's "colSpan" attribute is
218    * set.
219    *
220    * @return @c true if this SedSubPlot's "colSpan" attribute has been set,
221    * otherwise @c false is returned.
222    */
223   bool isSetColSpan() const;
224 
225 
226   /**
227    * Sets the value of the "plot" attribute of this SedSubPlot.
228    *
229    * @param plot std::string& value of the "plot" attribute to be set.
230    *
231    * @copydetails doc_returns_success_code
232    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
233    * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
234    * OperationReturnValues_t}
235    */
236   int setPlot(const std::string& plot);
237 
238 
239   /**
240    * Sets the value of the "row" attribute of this SedSubPlot.
241    *
242    * @param row int value of the "row" attribute to be set.
243    *
244    * @copydetails doc_returns_success_code
245    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
246    * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
247    * OperationReturnValues_t}
248    */
249   int setRow(int row);
250 
251 
252   /**
253    * Sets the value of the "col" attribute of this SedSubPlot.
254    *
255    * @param col int value of the "col" attribute to be set.
256    *
257    * @copydetails doc_returns_success_code
258    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
259    * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
260    * OperationReturnValues_t}
261    */
262   int setCol(int col);
263 
264 
265   /**
266    * Sets the value of the "rowSpan" attribute of this SedSubPlot.
267    *
268    * @param rowSpan int value of the "rowSpan" attribute to be set.
269    *
270    * @copydetails doc_returns_success_code
271    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
272    * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
273    * OperationReturnValues_t}
274    */
275   int setRowSpan(int rowSpan);
276 
277 
278   /**
279    * Sets the value of the "colSpan" attribute of this SedSubPlot.
280    *
281    * @param colSpan int value of the "colSpan" attribute to be set.
282    *
283    * @copydetails doc_returns_success_code
284    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
285    * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
286    * OperationReturnValues_t}
287    */
288   int setColSpan(int colSpan);
289 
290 
291   /**
292    * Unsets the value of the "plot" attribute of this SedSubPlot.
293    *
294    * @copydetails doc_returns_success_code
295    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
296    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
297    */
298   int unsetPlot();
299 
300 
301   /**
302    * Unsets the value of the "row" attribute of this SedSubPlot.
303    *
304    * @copydetails doc_returns_success_code
305    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
306    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
307    */
308   int unsetRow();
309 
310 
311   /**
312    * Unsets the value of the "col" attribute of this SedSubPlot.
313    *
314    * @copydetails doc_returns_success_code
315    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
316    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
317    */
318   int unsetCol();
319 
320 
321   /**
322    * Unsets the value of the "rowSpan" attribute of this SedSubPlot.
323    *
324    * @copydetails doc_returns_success_code
325    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
326    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
327    */
328   int unsetRowSpan();
329 
330 
331   /**
332    * Unsets the value of the "colSpan" attribute of this SedSubPlot.
333    *
334    * @copydetails doc_returns_success_code
335    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
336    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
337    */
338   int unsetColSpan();
339 
340 
341   /**
342    * @copydoc doc_renamesidref_common
343    */
344   virtual void renameSIdRefs(const std::string& oldid,
345                              const std::string& newid);
346 
347 
348   /**
349    * Returns the XML element name of this SedSubPlot object.
350    *
351    * For SedSubPlot, the XML element name is always @c "subPlot".
352    *
353    * @return the name of this element, i.e. @c "subPlot".
354    */
355   virtual const std::string& getElementName() const;
356 
357 
358   /**
359    * Returns the libSEDML type code for this SedSubPlot object.
360    *
361    * @copydetails doc_what_are_typecodes
362    *
363    * @return the SED-ML type code for this object:
364    * @sedmlconstant{SEDML_SUBPLOT, SedTypeCode_t}.
365    *
366    * @copydetails doc_warning_typecodes_not_unique
367    *
368    * @see getElementName()
369    */
370   virtual int getTypeCode() const;
371 
372 
373   /**
374    * Predicate returning @c true if all the required attributes for this
375    * SedSubPlot object have been set.
376    *
377    * @return @c true to indicate that all the required attributes of this
378    * SedSubPlot have been set, otherwise @c false is returned.
379    *
380    *
381    * @note The required attributes for the SedSubPlot object are:
382    * @li "plot"
383    * @li "row"
384    * @li "col"
385    */
386   virtual bool hasRequiredAttributes() const;
387 
388 
389 
390   /** @cond doxygenLibSEDMLInternal */
391 
392   /**
393    * Write any contained elements
394    */
395   virtual void writeElements(LIBSBML_CPP_NAMESPACE_QUALIFIER XMLOutputStream&
396     stream) const;
397 
398   /** @endcond */
399 
400 
401 
402   /** @cond doxygenLibSEDMLInternal */
403 
404   /**
405    * Accepts the given SedVisitor
406    */
407   virtual bool accept(SedVisitor& v) const;
408 
409   /** @endcond */
410 
411 
412 
413   /** @cond doxygenLibSEDMLInternal */
414 
415   /**
416    * Sets the parent SedDocument
417    */
418   virtual void setSedDocument(SedDocument* d);
419 
420   /** @endcond */
421 
422 
423 
424 
425   #ifndef SWIG
426 
427 
428 
429   /** @cond doxygenLibSEDMLInternal */
430 
431   /**
432    * Gets the value of the "attributeName" attribute of this SedSubPlot.
433    *
434    * @param attributeName, the name of the attribute to retrieve.
435    *
436    * @param value, the address of the value to record.
437    *
438    * @copydetails doc_returns_success_code
439    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
440    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
441    */
442   virtual int getAttribute(const std::string& attributeName, bool& value)
443     const;
444 
445   /** @endcond */
446 
447 
448 
449   /** @cond doxygenLibSEDMLInternal */
450 
451   /**
452    * Gets the value of the "attributeName" attribute of this SedSubPlot.
453    *
454    * @param attributeName, the name of the attribute to retrieve.
455    *
456    * @param value, the address of the value to record.
457    *
458    * @copydetails doc_returns_success_code
459    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
460    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
461    */
462   virtual int getAttribute(const std::string& attributeName, int& value) const;
463 
464   /** @endcond */
465 
466 
467 
468   /** @cond doxygenLibSEDMLInternal */
469 
470   /**
471    * Gets the value of the "attributeName" attribute of this SedSubPlot.
472    *
473    * @param attributeName, the name of the attribute to retrieve.
474    *
475    * @param value, the address of the value to record.
476    *
477    * @copydetails doc_returns_success_code
478    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
479    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
480    */
481   virtual int getAttribute(const std::string& attributeName,
482                            double& value) const;
483 
484   /** @endcond */
485 
486 
487 
488   /** @cond doxygenLibSEDMLInternal */
489 
490   /**
491    * Gets the value of the "attributeName" attribute of this SedSubPlot.
492    *
493    * @param attributeName, the name of the attribute to retrieve.
494    *
495    * @param value, the address of the value to record.
496    *
497    * @copydetails doc_returns_success_code
498    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
499    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
500    */
501   virtual int getAttribute(const std::string& attributeName,
502                            unsigned int& value) const;
503 
504   /** @endcond */
505 
506 
507 
508   /** @cond doxygenLibSEDMLInternal */
509 
510   /**
511    * Gets the value of the "attributeName" attribute of this SedSubPlot.
512    *
513    * @param attributeName, the name of the attribute to retrieve.
514    *
515    * @param value, the address of the value to record.
516    *
517    * @copydetails doc_returns_success_code
518    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
519    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
520    */
521   virtual int getAttribute(const std::string& attributeName,
522                            std::string& value) const;
523 
524   /** @endcond */
525 
526 
527 
528   /** @cond doxygenLibSEDMLInternal */
529 
530   /**
531    * Predicate returning @c true if this SedSubPlot's attribute "attributeName"
532    * is set.
533    *
534    * @param attributeName, the name of the attribute to query.
535    *
536    * @return @c true if this SedSubPlot's attribute "attributeName" has been
537    * set, otherwise @c false is returned.
538    */
539   virtual bool isSetAttribute(const std::string& attributeName) const;
540 
541   /** @endcond */
542 
543 
544 
545   /** @cond doxygenLibSEDMLInternal */
546 
547   /**
548    * Sets the value of the "attributeName" attribute of this SedSubPlot.
549    *
550    * @param attributeName, the name of the attribute to set.
551    *
552    * @param value, the value of the attribute to set.
553    *
554    * @copydetails doc_returns_success_code
555    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
556    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
557    */
558   virtual int setAttribute(const std::string& attributeName, bool value);
559 
560   /** @endcond */
561 
562 
563 
564   /** @cond doxygenLibSEDMLInternal */
565 
566   /**
567    * Sets the value of the "attributeName" attribute of this SedSubPlot.
568    *
569    * @param attributeName, the name of the attribute to set.
570    *
571    * @param value, the value of the attribute to set.
572    *
573    * @copydetails doc_returns_success_code
574    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
575    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
576    */
577   virtual int setAttribute(const std::string& attributeName, int value);
578 
579   /** @endcond */
580 
581 
582 
583   /** @cond doxygenLibSEDMLInternal */
584 
585   /**
586    * Sets the value of the "attributeName" attribute of this SedSubPlot.
587    *
588    * @param attributeName, the name of the attribute to set.
589    *
590    * @param value, the value of the attribute to set.
591    *
592    * @copydetails doc_returns_success_code
593    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
594    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
595    */
596   virtual int setAttribute(const std::string& attributeName, double value);
597 
598   /** @endcond */
599 
600 
601 
602   /** @cond doxygenLibSEDMLInternal */
603 
604   /**
605    * Sets the value of the "attributeName" attribute of this SedSubPlot.
606    *
607    * @param attributeName, the name of the attribute to set.
608    *
609    * @param value, the value of the attribute to set.
610    *
611    * @copydetails doc_returns_success_code
612    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
613    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
614    */
615   virtual int setAttribute(const std::string& attributeName,
616                            unsigned int value);
617 
618   /** @endcond */
619 
620 
621 
622   /** @cond doxygenLibSEDMLInternal */
623 
624   /**
625    * Sets the value of the "attributeName" attribute of this SedSubPlot.
626    *
627    * @param attributeName, the name of the attribute to set.
628    *
629    * @param value, the value of the attribute to set.
630    *
631    * @copydetails doc_returns_success_code
632    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
633    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
634    */
635   virtual int setAttribute(const std::string& attributeName,
636                            const std::string& value);
637 
638   /** @endcond */
639 
640 
641 
642   /** @cond doxygenLibSEDMLInternal */
643 
644   /**
645    * Unsets the value of the "attributeName" attribute of this SedSubPlot.
646    *
647    * @param attributeName, the name of the attribute to query.
648    *
649    * @copydetails doc_returns_success_code
650    * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
651    * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
652    */
653   virtual int unsetAttribute(const std::string& attributeName);
654 
655   /** @endcond */
656 
657 
658 
659 
660   #endif /* !SWIG */
661 
662 
663 protected:
664 
665 
666   /** @cond doxygenLibSEDMLInternal */
667 
668   /**
669    * Adds the expected attributes for this element
670    */
671   virtual void addExpectedAttributes(LIBSBML_CPP_NAMESPACE_QUALIFIER
672     ExpectedAttributes& attributes);
673 
674   /** @endcond */
675 
676 
677 
678   /** @cond doxygenLibSEDMLInternal */
679 
680   /**
681    * Reads the expected attributes into the member data variables
682    */
683   virtual void readAttributes(
684                               const LIBSBML_CPP_NAMESPACE_QUALIFIER
685                                 XMLAttributes& attributes,
686                               const LIBSBML_CPP_NAMESPACE_QUALIFIER
687                                 ExpectedAttributes& expectedAttributes);
688 
689   /** @endcond */
690 
691 
692 
693   /** @cond doxygenLibSEDMLInternal */
694 
695   /**
696    * Writes the attributes to the stream
697    */
698   virtual void writeAttributes(LIBSBML_CPP_NAMESPACE_QUALIFIER XMLOutputStream&
699     stream) const;
700 
701   /** @endcond */
702 
703 
704 };
705 
706 
707 
708 LIBSEDML_CPP_NAMESPACE_END
709 
710 
711 
712 
713 #endif /* __cplusplus */
714 
715 
716 
717 
718 #ifndef SWIG
719 
720 
721 
722 
723 LIBSEDML_CPP_NAMESPACE_BEGIN
724 
725 
726 
727 
728 BEGIN_C_DECLS
729 
730 
731 /**
732  * Creates a new SedSubPlot_t using the given SED-ML Level and @ p version
733  * values.
734  *
735  * @param level an unsigned int, the SED-ML Level to assign to this
736  * SedSubPlot_t.
737  *
738  * @param version an unsigned int, the SED-ML Version to assign to this
739  * SedSubPlot_t.
740  *
741  * @copydetails doc_note_setting_lv_pkg
742  *
743  * @copydetails doc_returned_owned_pointer
744  *
745  * @memberof SedSubPlot_t
746  */
747 LIBSEDML_EXTERN
748 SedSubPlot_t *
749 SedSubPlot_create(unsigned int level, unsigned int version);
750 
751 
752 /**
753  * Creates and returns a deep copy of this SedSubPlot_t object.
754  *
755  * @param ssp the SedSubPlot_t structure.
756  *
757  * @return a (deep) copy of this SedSubPlot_t object.
758  *
759  * @copydetails doc_returned_owned_pointer
760  *
761  * @memberof SedSubPlot_t
762  */
763 LIBSEDML_EXTERN
764 SedSubPlot_t*
765 SedSubPlot_clone(const SedSubPlot_t* ssp);
766 
767 
768 /**
769  * Frees this SedSubPlot_t object.
770  *
771  * @param ssp the SedSubPlot_t structure.
772  *
773  * @memberof SedSubPlot_t
774  */
775 LIBSEDML_EXTERN
776 void
777 SedSubPlot_free(SedSubPlot_t* ssp);
778 
779 
780 /**
781  * Returns the value of the "plot" attribute of this SedSubPlot_t.
782  *
783  * @param ssp the SedSubPlot_t structure whose plot is sought.
784  *
785  * @return the value of the "plot" attribute of this SedSubPlot_t as a pointer
786  * to a string.
787  *
788  * @copydetails doc_returned_owned_char
789  *
790  * @memberof SedSubPlot_t
791  */
792 LIBSEDML_EXTERN
793 char *
794 SedSubPlot_getPlot(const SedSubPlot_t * ssp);
795 
796 
797 /**
798  * Returns the value of the "row" attribute of this SedSubPlot_t.
799  *
800  * @param ssp the SedSubPlot_t structure whose row is sought.
801  *
802  * @return the value of the "row" attribute of this SedSubPlot_t as a integer.
803  *
804  * @memberof SedSubPlot_t
805  */
806 LIBSEDML_EXTERN
807 int
808 SedSubPlot_getRow(const SedSubPlot_t * ssp);
809 
810 
811 /**
812  * Returns the value of the "col" attribute of this SedSubPlot_t.
813  *
814  * @param ssp the SedSubPlot_t structure whose col is sought.
815  *
816  * @return the value of the "col" attribute of this SedSubPlot_t as a integer.
817  *
818  * @memberof SedSubPlot_t
819  */
820 LIBSEDML_EXTERN
821 int
822 SedSubPlot_getCol(const SedSubPlot_t * ssp);
823 
824 
825 /**
826  * Returns the value of the "rowSpan" attribute of this SedSubPlot_t.
827  *
828  * @param ssp the SedSubPlot_t structure whose rowSpan is sought.
829  *
830  * @return the value of the "rowSpan" attribute of this SedSubPlot_t as a
831  * integer.
832  *
833  * @memberof SedSubPlot_t
834  */
835 LIBSEDML_EXTERN
836 int
837 SedSubPlot_getRowSpan(const SedSubPlot_t * ssp);
838 
839 
840 /**
841  * Returns the value of the "colSpan" attribute of this SedSubPlot_t.
842  *
843  * @param ssp the SedSubPlot_t structure whose colSpan is sought.
844  *
845  * @return the value of the "colSpan" attribute of this SedSubPlot_t as a
846  * integer.
847  *
848  * @memberof SedSubPlot_t
849  */
850 LIBSEDML_EXTERN
851 int
852 SedSubPlot_getColSpan(const SedSubPlot_t * ssp);
853 
854 
855 /**
856  * Predicate returning @c 1 (true) if this SedSubPlot_t's "plot" attribute is
857  * set.
858  *
859  * @param ssp the SedSubPlot_t structure.
860  *
861  * @return @c 1 (true) if this SedSubPlot_t's "plot" attribute has been set,
862  * otherwise @c 0 (false) is returned.
863  *
864  * @memberof SedSubPlot_t
865  */
866 LIBSEDML_EXTERN
867 int
868 SedSubPlot_isSetPlot(const SedSubPlot_t * ssp);
869 
870 
871 /**
872  * Predicate returning @c 1 (true) if this SedSubPlot_t's "row" attribute is
873  * set.
874  *
875  * @param ssp the SedSubPlot_t structure.
876  *
877  * @return @c 1 (true) if this SedSubPlot_t's "row" attribute has been set,
878  * otherwise @c 0 (false) is returned.
879  *
880  * @memberof SedSubPlot_t
881  */
882 LIBSEDML_EXTERN
883 int
884 SedSubPlot_isSetRow(const SedSubPlot_t * ssp);
885 
886 
887 /**
888  * Predicate returning @c 1 (true) if this SedSubPlot_t's "col" attribute is
889  * set.
890  *
891  * @param ssp the SedSubPlot_t structure.
892  *
893  * @return @c 1 (true) if this SedSubPlot_t's "col" attribute has been set,
894  * otherwise @c 0 (false) is returned.
895  *
896  * @memberof SedSubPlot_t
897  */
898 LIBSEDML_EXTERN
899 int
900 SedSubPlot_isSetCol(const SedSubPlot_t * ssp);
901 
902 
903 /**
904  * Predicate returning @c 1 (true) if this SedSubPlot_t's "rowSpan" attribute
905  * is set.
906  *
907  * @param ssp the SedSubPlot_t structure.
908  *
909  * @return @c 1 (true) if this SedSubPlot_t's "rowSpan" attribute has been set,
910  * otherwise @c 0 (false) is returned.
911  *
912  * @memberof SedSubPlot_t
913  */
914 LIBSEDML_EXTERN
915 int
916 SedSubPlot_isSetRowSpan(const SedSubPlot_t * ssp);
917 
918 
919 /**
920  * Predicate returning @c 1 (true) if this SedSubPlot_t's "colSpan" attribute
921  * is set.
922  *
923  * @param ssp the SedSubPlot_t structure.
924  *
925  * @return @c 1 (true) if this SedSubPlot_t's "colSpan" attribute has been set,
926  * otherwise @c 0 (false) is returned.
927  *
928  * @memberof SedSubPlot_t
929  */
930 LIBSEDML_EXTERN
931 int
932 SedSubPlot_isSetColSpan(const SedSubPlot_t * ssp);
933 
934 
935 /**
936  * Sets the value of the "plot" attribute of this SedSubPlot_t.
937  *
938  * @param ssp the SedSubPlot_t structure.
939  *
940  * @param plot const char * value of the "plot" attribute to be set.
941  *
942  * @copydetails doc_returns_success_code
943  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
944  * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
945  * OperationReturnValues_t}
946  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
947  *
948  * @memberof SedSubPlot_t
949  */
950 LIBSEDML_EXTERN
951 int
952 SedSubPlot_setPlot(SedSubPlot_t * ssp, const char * plot);
953 
954 
955 /**
956  * Sets the value of the "row" attribute of this SedSubPlot_t.
957  *
958  * @param ssp the SedSubPlot_t structure.
959  *
960  * @param row int value of the "row" attribute to be set.
961  *
962  * @copydetails doc_returns_success_code
963  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
964  * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
965  * OperationReturnValues_t}
966  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
967  *
968  * @memberof SedSubPlot_t
969  */
970 LIBSEDML_EXTERN
971 int
972 SedSubPlot_setRow(SedSubPlot_t * ssp, int row);
973 
974 
975 /**
976  * Sets the value of the "col" attribute of this SedSubPlot_t.
977  *
978  * @param ssp the SedSubPlot_t structure.
979  *
980  * @param col int value of the "col" attribute to be set.
981  *
982  * @copydetails doc_returns_success_code
983  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
984  * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
985  * OperationReturnValues_t}
986  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
987  *
988  * @memberof SedSubPlot_t
989  */
990 LIBSEDML_EXTERN
991 int
992 SedSubPlot_setCol(SedSubPlot_t * ssp, int col);
993 
994 
995 /**
996  * Sets the value of the "rowSpan" attribute of this SedSubPlot_t.
997  *
998  * @param ssp the SedSubPlot_t structure.
999  *
1000  * @param rowSpan int value of the "rowSpan" attribute to be set.
1001  *
1002  * @copydetails doc_returns_success_code
1003  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
1004  * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
1005  * OperationReturnValues_t}
1006  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
1007  *
1008  * @memberof SedSubPlot_t
1009  */
1010 LIBSEDML_EXTERN
1011 int
1012 SedSubPlot_setRowSpan(SedSubPlot_t * ssp, int rowSpan);
1013 
1014 
1015 /**
1016  * Sets the value of the "colSpan" attribute of this SedSubPlot_t.
1017  *
1018  * @param ssp the SedSubPlot_t structure.
1019  *
1020  * @param colSpan int value of the "colSpan" attribute to be set.
1021  *
1022  * @copydetails doc_returns_success_code
1023  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
1024  * @li @sedmlconstant{LIBSEDML_INVALID_ATTRIBUTE_VALUE,
1025  * OperationReturnValues_t}
1026  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
1027  *
1028  * @memberof SedSubPlot_t
1029  */
1030 LIBSEDML_EXTERN
1031 int
1032 SedSubPlot_setColSpan(SedSubPlot_t * ssp, int colSpan);
1033 
1034 
1035 /**
1036  * Unsets the value of the "plot" attribute of this SedSubPlot_t.
1037  *
1038  * @param ssp the SedSubPlot_t structure.
1039  *
1040  * @copydetails doc_returns_success_code
1041  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
1042  * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
1043  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
1044  *
1045  * @memberof SedSubPlot_t
1046  */
1047 LIBSEDML_EXTERN
1048 int
1049 SedSubPlot_unsetPlot(SedSubPlot_t * ssp);
1050 
1051 
1052 /**
1053  * Unsets the value of the "row" attribute of this SedSubPlot_t.
1054  *
1055  * @param ssp the SedSubPlot_t structure.
1056  *
1057  * @copydetails doc_returns_success_code
1058  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
1059  * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
1060  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
1061  *
1062  * @memberof SedSubPlot_t
1063  */
1064 LIBSEDML_EXTERN
1065 int
1066 SedSubPlot_unsetRow(SedSubPlot_t * ssp);
1067 
1068 
1069 /**
1070  * Unsets the value of the "col" attribute of this SedSubPlot_t.
1071  *
1072  * @param ssp the SedSubPlot_t structure.
1073  *
1074  * @copydetails doc_returns_success_code
1075  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
1076  * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
1077  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
1078  *
1079  * @memberof SedSubPlot_t
1080  */
1081 LIBSEDML_EXTERN
1082 int
1083 SedSubPlot_unsetCol(SedSubPlot_t * ssp);
1084 
1085 
1086 /**
1087  * Unsets the value of the "rowSpan" attribute of this SedSubPlot_t.
1088  *
1089  * @param ssp the SedSubPlot_t structure.
1090  *
1091  * @copydetails doc_returns_success_code
1092  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
1093  * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
1094  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
1095  *
1096  * @memberof SedSubPlot_t
1097  */
1098 LIBSEDML_EXTERN
1099 int
1100 SedSubPlot_unsetRowSpan(SedSubPlot_t * ssp);
1101 
1102 
1103 /**
1104  * Unsets the value of the "colSpan" attribute of this SedSubPlot_t.
1105  *
1106  * @param ssp the SedSubPlot_t structure.
1107  *
1108  * @copydetails doc_returns_success_code
1109  * @li @sedmlconstant{LIBSEDML_OPERATION_SUCCESS, OperationReturnValues_t}
1110  * @li @sedmlconstant{LIBSEDML_OPERATION_FAILED, OperationReturnValues_t}
1111  * @li @sedmlconstant{LIBSEDML_INVALID_OBJECT, OperationReturnValues_t}
1112  *
1113  * @memberof SedSubPlot_t
1114  */
1115 LIBSEDML_EXTERN
1116 int
1117 SedSubPlot_unsetColSpan(SedSubPlot_t * ssp);
1118 
1119 
1120 /**
1121  * Predicate returning @c 1 (true) if all the required attributes for this
1122  * SedSubPlot_t object have been set.
1123  *
1124  * @param ssp the SedSubPlot_t structure.
1125  *
1126  * @return @c 1 (true) to indicate that all the required attributes of this
1127  * SedSubPlot_t have been set, otherwise @c 0 (false) is returned.
1128  *
1129  *
1130  * @note The required attributes for the SedSubPlot_t object are:
1131  * @li "plot"
1132  * @li "row"
1133  * @li "col"
1134  *
1135  * @memberof SedSubPlot_t
1136  */
1137 LIBSEDML_EXTERN
1138 int
1139 SedSubPlot_hasRequiredAttributes(const SedSubPlot_t * ssp);
1140 
1141 
1142 
1143 
1144 END_C_DECLS
1145 
1146 
1147 
1148 
1149 LIBSEDML_CPP_NAMESPACE_END
1150 
1151 
1152 
1153 
1154 #endif /* !SWIG */
1155 
1156 
1157 
1158 
1159 #endif /* !SedSubPlot_H__ */
1160 
1161 
1162