NCBI C++ ToolKit
PC_InfoData_.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id$
2  * ===========================================================================
3  *
4  * PUBLIC DOMAIN NOTICE
5  * National Center for Biotechnology Information
6  *
7  * This software/database is a "United States Government Work" under the
8  * terms of the United States Copyright Act. It was written as part of
9  * the author's official duties as a United States Government employee and
10  * thus cannot be copyrighted. This software/database is freely available
11  * to the public for use. The National Library of Medicine and the U.S.
12  * Government have not placed any restriction on its use or reproduction.
13  *
14  * Although all reasonable efforts have been taken to ensure the accuracy
15  * and reliability of the software and data, the NLM and the U.S.
16  * Government do not and cannot warrant the performance or results that
17  * may be obtained by using this software or data. The NLM and the U.S.
18  * Government disclaim all warranties, express or implied, including
19  * warranties of performance, merchantability or fitness for any particular
20  * purpose.
21  *
22  * Please cite the author in any work or product based on this material.
23  *
24  * ===========================================================================
25  *
26  */
27 
28 /// @file PC_InfoData_.hpp
29 /// Data storage class.
30 ///
31 /// This file was generated by application DATATOOL
32 /// using the following specifications:
33 /// <a href="/IEB/ToolBox/CPP_DOC/lxr/source/src/objects/pcsubstance/pcsubstance.asn">pcsubstance.asn</a>
34 /// and additional tune-up parameters:
35 /// <a href="/IEB/ToolBox/CPP_DOC/lxr/source/src/objects/pcsubstance/pcsubstance.def">pcsubstance.def</a>
36 ///
37 /// ATTENTION:
38 /// Don't edit or commit this file into CVS as this file will
39 /// be overridden (by DATATOOL) without warning!
40 
41 #ifndef OBJECTS_PCSUBSTANCE_PC_INFODATA_BASE_HPP
42 #define OBJECTS_PCSUBSTANCE_PC_INFODATA_BASE_HPP
43 
44 // standard includes
45 #include <serial/serialbase.hpp>
46 
47 // generated includes
48 #include <list>
49 #include <string>
50 #include <vector>
51 
53 
54 #ifndef BEGIN_objects_SCOPE
55 # define BEGIN_objects_SCOPE BEGIN_SCOPE(objects)
56 # define END_objects_SCOPE END_SCOPE(objects)
57 #endif
58 BEGIN_objects_SCOPE // namespace ncbi::objects::
59 
60 
61 // forward declarations
62 class CDate;
63 class CPC_Urn;
64 
65 
66 // generated classes
67 
68 
69 /** @addtogroup dataspec_NCBI_PCSubstance
70  *
71  * @{
72  */
73 
74 /////////////////////////////////////////////////////////////////////////////
75 /// Compound Description/Descriptor Data
76 ///
77 /// CPC_InfoData_Base --
78 ///
79 
81 {
83 public:
84  // constructor
85  CPC_InfoData_Base(void);
86  // destructor
87  virtual ~CPC_InfoData_Base(void);
88 
89  // type info
91 
92  /////////////////////////////////////////////////////////////////////////////
93  /// Data Value
94  ///
95  /// C_Value --
96  ///
97 
99  {
101  public:
102  // constructor
103  C_Value(void);
104  // destructor
105  ~C_Value(void);
106 
107  // type info
109 
110 
111  /// Choice variants.
112  enum E_Choice {
113  e_not_set = 0, ///< No variant selected
114  e_Bval, ///< Boolean or Binary
115  e_Bvec, ///< Boolean Vector
116  e_Ival, ///< Integer (signed or unsigned)
117  e_Ivec, ///< Integer Vector
118  e_Fval, ///< Float or Double
119  e_Fvec, ///< Double Vector
120  e_Sval, ///< String
121  e_Slist, ///< List of Strings
122  e_Date, ///< Date
123  e_Binary, ///< Binary Data
124  e_Bitlist ///< Bit List (specialized version of Boolean vector)
125  };
126  /// Maximum+1 value of the choice variant enumerator.
128  e_MaxChoice = 12 ///< == e_Bitlist+1
129  };
130 
131  /// Reset the whole object
132  void Reset(void);
133 
134  /// Reset the selection (set it to e_not_set).
135  void ResetSelection(void);
136 
137  /// Which variant is currently selected.
138  ///
139  /// @return
140  /// Choice state enumerator.
141  E_Choice Which(void) const;
142 
143  /// Verify selection, throw exception if it differs from the expected.
144  ///
145  /// @param index
146  /// Expected selection.
147  void CheckSelected(E_Choice index) const;
148 
149  /// Throw 'InvalidSelection' exception.
150  ///
151  /// @param index
152  /// Expected selection.
153  NCBI_NORETURN void ThrowInvalidSelection(E_Choice index) const;
154 
155  /// Retrieve selection name (for diagnostic purposes).
156  ///
157  /// @param index
158  /// One of possible selection states.
159  /// @return
160  /// Name string.
161  static string SelectionName(E_Choice index);
162 
163  /// Select the requested variant if needed.
164  ///
165  /// @param index
166  /// New selection state.
167  /// @param reset
168  /// Flag that defines the resetting of the variant data. The data will
169  /// be reset if either the current selection differs from the new one,
170  /// or the flag is set to eDoResetVariant.
172  /// Select the requested variant if needed,
173  /// allocating CObject variants from memory pool.
174  void Select(E_Choice index,
175  EResetVariant reset,
176  CObjectMemoryPool* pool);
177 
178  // types
179  typedef bool TBval;
180  typedef vector< char > TBvec;
181  typedef int TIval;
182  typedef vector< int > TIvec;
183  typedef double TFval;
184  typedef vector< double > TFvec;
185  typedef string TSval;
186  typedef list< string > TSlist;
187  typedef CDate TDate;
188  typedef vector< char > TBinary;
190 
191  // getters
192  // setters
193 
194 
195  /// Check if variant Bval is selected.
196  ///
197  /// Bval type is defined as 'typedef bool TBval'.
198  /// @return
199  /// - true, if the variant is selected.
200  /// - false, otherwise.
201  bool IsBval(void) const;
202 
203  /// Get the variant data.
204  ///
205  /// @return
206  /// Copy of the variant data.
207  TBval GetBval(void) const;
208 
209  /// Select the variant.
210  ///
211  /// @return
212  /// Reference to the variant data.
213  TBval& SetBval(void);
214 
215  /// Select the variant and set its data.
216  ///
217  /// @param value
218  /// Variant data.
219  void SetBval(TBval value);
220 
221 
222  /// Check if variant Bvec is selected.
223  ///
224  /// Bvec type is defined as 'typedef vector< char > TBvec'.
225  /// @return
226  /// - true, if the variant is selected.
227  /// - false, otherwise.
228  bool IsBvec(void) const;
229 
230  /// Get the variant data.
231  ///
232  /// @return
233  /// Reference to the data.
234  const TBvec& GetBvec(void) const;
235 
236  /// Select the variant.
237  ///
238  /// @return
239  /// Reference to the variant data.
240  TBvec& SetBvec(void);
241 
242 
243  /// Check if variant Ival is selected.
244  ///
245  /// Ival type is defined as 'typedef int TIval'.
246  /// @return
247  /// - true, if the variant is selected.
248  /// - false, otherwise.
249  bool IsIval(void) const;
250 
251  /// Get the variant data.
252  ///
253  /// @return
254  /// Copy of the variant data.
255  TIval GetIval(void) const;
256 
257  /// Select the variant.
258  ///
259  /// @return
260  /// Reference to the variant data.
261  TIval& SetIval(void);
262 
263  /// Select the variant and set its data.
264  ///
265  /// @param value
266  /// Variant data.
267  void SetIval(TIval value);
268 
269 
270  /// Check if variant Ivec is selected.
271  ///
272  /// Ivec type is defined as 'typedef vector< int > TIvec'.
273  /// @return
274  /// - true, if the variant is selected.
275  /// - false, otherwise.
276  bool IsIvec(void) const;
277 
278  /// Get the variant data.
279  ///
280  /// @return
281  /// Reference to the data.
282  const TIvec& GetIvec(void) const;
283 
284  /// Select the variant.
285  ///
286  /// @return
287  /// Reference to the variant data.
288  TIvec& SetIvec(void);
289 
290 
291  /// Check if variant Fval is selected.
292  ///
293  /// Fval type is defined as 'typedef double TFval'.
294  /// @return
295  /// - true, if the variant is selected.
296  /// - false, otherwise.
297  bool IsFval(void) const;
298 
299  /// Get the variant data.
300  ///
301  /// @return
302  /// Copy of the variant data.
303  TFval GetFval(void) const;
304 
305  /// Select the variant.
306  ///
307  /// @return
308  /// Reference to the variant data.
309  TFval& SetFval(void);
310 
311  /// Select the variant and set its data.
312  ///
313  /// @param value
314  /// Variant data.
315  void SetFval(TFval value);
316 
317 
318  /// Check if variant Fvec is selected.
319  ///
320  /// Fvec type is defined as 'typedef vector< double > TFvec'.
321  /// @return
322  /// - true, if the variant is selected.
323  /// - false, otherwise.
324  bool IsFvec(void) const;
325 
326  /// Get the variant data.
327  ///
328  /// @return
329  /// Reference to the data.
330  const TFvec& GetFvec(void) const;
331 
332  /// Select the variant.
333  ///
334  /// @return
335  /// Reference to the variant data.
336  TFvec& SetFvec(void);
337 
338 
339  /// Check if variant Sval is selected.
340  ///
341  /// Sval type is defined as 'typedef string TSval'.
342  /// @return
343  /// - true, if the variant is selected.
344  /// - false, otherwise.
345  bool IsSval(void) const;
346 
347  /// Get the variant data.
348  ///
349  /// @return
350  /// Reference to the data.
351  const TSval& GetSval(void) const;
352 
353  /// Select the variant.
354  ///
355  /// @return
356  /// Reference to the variant data.
357  TSval& SetSval(void);
358 
359  /// Select the variant and set its data.
360  ///
361  /// @param value
362  /// Variant data.
363  void SetSval(const TSval& value);
364 
365 
366  /// Check if variant Slist is selected.
367  ///
368  /// Slist type is defined as 'typedef list< string > TSlist'.
369  /// @return
370  /// - true, if the variant is selected.
371  /// - false, otherwise.
372  bool IsSlist(void) const;
373 
374  /// Get the variant data.
375  ///
376  /// @return
377  /// Reference to the data.
378  const TSlist& GetSlist(void) const;
379 
380  /// Select the variant.
381  ///
382  /// @return
383  /// Reference to the variant data.
384  TSlist& SetSlist(void);
385 
386 
387  /// Check if variant Date is selected.
388  ///
389  /// Date type is defined as 'typedef CDate TDate'.
390  /// @return
391  /// - true, if the variant is selected.
392  /// - false, otherwise.
393  bool IsDate(void) const;
394 
395  /// Get the variant data.
396  ///
397  /// @return
398  /// Reference to the data.
399  const TDate& GetDate(void) const;
400 
401  /// Select the variant.
402  ///
403  /// @return
404  /// Reference to the variant data.
405  TDate& SetDate(void);
406  /// Select the variant and set its data.
407  ///
408  /// @param value
409  /// Reference to the data.
410  void SetDate(TDate& value);
411 
412 
413  /// Check if variant Binary is selected.
414  ///
415  /// Binary type is defined as 'typedef vector< char > TBinary'.
416  /// @return
417  /// - true, if the variant is selected.
418  /// - false, otherwise.
419  bool IsBinary(void) const;
420 
421  /// Get the variant data.
422  ///
423  /// @return
424  /// Reference to the data.
425  const TBinary& GetBinary(void) const;
426 
427  /// Select the variant.
428  ///
429  /// @return
430  /// Reference to the variant data.
431  TBinary& SetBinary(void);
432 
433 
434  /// Check if variant Bitlist is selected.
435  ///
436  /// Bitlist type is defined as 'typedef CBitString TBitlist'.
437  /// @return
438  /// - true, if the variant is selected.
439  /// - false, otherwise.
440  bool IsBitlist(void) const;
441 
442  /// Get the variant data.
443  ///
444  /// @return
445  /// Reference to the data.
446  const TBitlist& GetBitlist(void) const;
447 
448  /// Select the variant.
449  ///
450  /// @return
451  /// Reference to the variant data.
452  TBitlist& SetBitlist(void);
453 
454 
455  private:
456  // copy constructor and assignment operator
457  C_Value(const C_Value& );
459  // choice state
461  // helper methods
462  void DoSelect(E_Choice index, CObjectMemoryPool* pool = 0);
463 
464  static const char* const sm_SelectionNames[];
465  // data
466  union {
468  NCBI_NS_NCBI::CUnionBuffer<TBvec> m_Bvec;
470  NCBI_NS_NCBI::CUnionBuffer<TIvec> m_Ivec;
472  NCBI_NS_NCBI::CUnionBuffer<TFvec> m_Fvec;
473  NCBI_NS_NCBI::CUnionBuffer<TSlist> m_Slist;
474  NCBI_NS_NCBI::CUnionBuffer<TBinary> m_Binary;
475  NCBI_NS_NCBI::CUnionBuffer<TBitlist> m_Bitlist;
476  NCBI_NS_NCBI::CUnionBuffer<NCBI_NS_STD::string> m_string;
477  NCBI_NS_NCBI::CSerialObject *m_object;
478  };
479  };
480  // types
481  typedef CPC_Urn TUrn;
482  typedef C_Value TValue;
483 
484  // member index
485  enum class E_memberIndex {
486  e__allMandatory = 0,
487  e_urn,
488  e_value
489  };
491 
492  // getters
493  // setters
494 
495  /// Universal Resource Name [for Value Qualification]
496  /// Check if a value has been assigned to Urn data member.
497  ///
498  /// Data member Urn is mandatory;
499  /// its type is defined as 'typedef CPC_Urn TUrn'
500  /// @return
501  /// - true, if a value has been assigned.
502  /// - false, otherwise.
503  bool IsSetUrn(void) const;
504 
505  /// Check if it is safe to call GetUrn method.
506  ///
507  /// @return
508  /// - true, if the data member is getatable.
509  /// - false, otherwise.
510  bool CanGetUrn(void) const;
511 
512  /// Reset Urn data member.
513  void ResetUrn(void);
514 
515  /// Get the Urn member data.
516  ///
517  /// @return
518  /// Reference to the member data.
519  const TUrn& GetUrn(void) const;
520 
521  /// Assign a value to Urn data member.
522  ///
523  /// @param value
524  /// Reference to value.
525  void SetUrn(TUrn& value);
526 
527  /// Assign a value to Urn data member.
528  ///
529  /// @return
530  /// Reference to the data value.
531  TUrn& SetUrn(void);
532 
533  /// Check if a value has been assigned to Value data member.
534  ///
535  /// Data member Value is mandatory;
536  /// its type is defined as 'typedef C_Value TValue'
537  /// @return
538  /// - true, if a value has been assigned.
539  /// - false, otherwise.
540  bool IsSetValue(void) const;
541 
542  /// Check if it is safe to call GetValue method.
543  ///
544  /// @return
545  /// - true, if the data member is getatable.
546  /// - false, otherwise.
547  bool CanGetValue(void) const;
548 
549  /// Reset Value data member.
550  void ResetValue(void);
551 
552  /// Get the Value member data.
553  ///
554  /// @return
555  /// Reference to the member data.
556  const TValue& GetValue(void) const;
557 
558  /// Assign a value to Value data member.
559  ///
560  /// @param value
561  /// Reference to value.
562  void SetValue(TValue& value);
563 
564  /// Assign a value to Value data member.
565  ///
566  /// @return
567  /// Reference to the data value.
568  TValue& SetValue(void);
569 
570  /// Reset the whole object
571  virtual void Reset(void);
572 
573 
574 private:
575  // Prohibit copy constructor and assignment operator
578 
579  // data
580  Uint4 m_set_State[1];
583 };
584 
585 /* @} */
586 
587 
588 
589 
590 
591 ///////////////////////////////////////////////////////////
592 ///////////////////// inline methods //////////////////////
593 ///////////////////////////////////////////////////////////
594 inline
596 {
597  return m_choice;
598 }
599 
600 inline
602 {
603  if ( m_choice != index )
604  ThrowInvalidSelection(index);
605 }
606 
607 inline
608 void CPC_InfoData_Base::C_Value::Select(E_Choice index, NCBI_NS_NCBI::EResetVariant reset, NCBI_NS_NCBI::CObjectMemoryPool* pool)
609 {
610  if ( reset == NCBI_NS_NCBI::eDoResetVariant || m_choice != index ) {
611  if ( m_choice != e_not_set )
612  ResetSelection();
613  DoSelect(index, pool);
614  }
615 }
616 
617 inline
619 {
620  Select(index, reset, 0);
621 }
622 
623 inline
625 {
626  return m_choice == e_Bval;
627 }
628 
629 inline
631 {
632  CheckSelected(e_Bval);
633  return m_Bval;
634 }
635 
636 inline
638 {
639  Select(e_Bval, NCBI_NS_NCBI::eDoNotResetVariant);
640  return m_Bval;
641 }
642 
643 inline
645 {
646  Select(e_Bval, NCBI_NS_NCBI::eDoNotResetVariant);
647  m_Bval = value;
648 }
649 
650 inline
652 {
653  return m_choice == e_Bvec;
654 }
655 
656 inline
658 {
659  CheckSelected(e_Bvec);
660  return *m_Bvec;
661 }
662 
663 inline
665 {
666  Select(e_Bvec, NCBI_NS_NCBI::eDoNotResetVariant);
667  return *m_Bvec;
668 }
669 
670 inline
672 {
673  return m_choice == e_Ival;
674 }
675 
676 inline
678 {
679  CheckSelected(e_Ival);
680  return m_Ival;
681 }
682 
683 inline
685 {
686  Select(e_Ival, NCBI_NS_NCBI::eDoNotResetVariant);
687  return m_Ival;
688 }
689 
690 inline
692 {
693  Select(e_Ival, NCBI_NS_NCBI::eDoNotResetVariant);
694  m_Ival = value;
695 }
696 
697 inline
699 {
700  return m_choice == e_Ivec;
701 }
702 
703 inline
705 {
706  CheckSelected(e_Ivec);
707  return *m_Ivec;
708 }
709 
710 inline
712 {
713  Select(e_Ivec, NCBI_NS_NCBI::eDoNotResetVariant);
714  return *m_Ivec;
715 }
716 
717 inline
719 {
720  return m_choice == e_Fval;
721 }
722 
723 inline
725 {
726  CheckSelected(e_Fval);
727  return m_Fval;
728 }
729 
730 inline
732 {
733  Select(e_Fval, NCBI_NS_NCBI::eDoNotResetVariant);
734  return m_Fval;
735 }
736 
737 inline
739 {
740  Select(e_Fval, NCBI_NS_NCBI::eDoNotResetVariant);
741  m_Fval = value;
742 }
743 
744 inline
746 {
747  return m_choice == e_Fvec;
748 }
749 
750 inline
752 {
753  CheckSelected(e_Fvec);
754  return *m_Fvec;
755 }
756 
757 inline
759 {
760  Select(e_Fvec, NCBI_NS_NCBI::eDoNotResetVariant);
761  return *m_Fvec;
762 }
763 
764 inline
766 {
767  return m_choice == e_Sval;
768 }
769 
770 inline
772 {
773  CheckSelected(e_Sval);
774  return *m_string;
775 }
776 
777 inline
779 {
780  Select(e_Sval, NCBI_NS_NCBI::eDoNotResetVariant);
781  return *m_string;
782 }
783 
784 inline
786 {
787  return m_choice == e_Slist;
788 }
789 
790 inline
792 {
793  CheckSelected(e_Slist);
794  return *m_Slist;
795 }
796 
797 inline
799 {
800  Select(e_Slist, NCBI_NS_NCBI::eDoNotResetVariant);
801  return *m_Slist;
802 }
803 
804 inline
806 {
807  return m_choice == e_Date;
808 }
809 
810 inline
812 {
813  return m_choice == e_Binary;
814 }
815 
816 inline
818 {
819  CheckSelected(e_Binary);
820  return *m_Binary;
821 }
822 
823 inline
825 {
826  Select(e_Binary, NCBI_NS_NCBI::eDoNotResetVariant);
827  return *m_Binary;
828 }
829 
830 inline
832 {
833  return m_choice == e_Bitlist;
834 }
835 
836 inline
838 {
839  CheckSelected(e_Bitlist);
840  return *m_Bitlist;
841 }
842 
843 inline
845 {
846  Select(e_Bitlist, NCBI_NS_NCBI::eDoNotResetVariant);
847  return *m_Bitlist;
848 }
849 
850 inline
852 {
853  return m_Urn.NotEmpty();
854 }
855 
856 inline
858 {
859  return true;
860 }
861 
862 inline
864 {
865  if ( !m_Urn ) {
866  const_cast<CPC_InfoData_Base*>(this)->ResetUrn();
867  }
868  return (*m_Urn);
869 }
870 
871 inline
873 {
874  if ( !m_Urn ) {
875  ResetUrn();
876  }
877  return (*m_Urn);
878 }
879 
880 inline
882 {
883  return m_Value.NotEmpty();
884 }
885 
886 inline
888 {
889  return true;
890 }
891 
892 inline
894 {
895  if ( !m_Value ) {
896  const_cast<CPC_InfoData_Base*>(this)->ResetValue();
897  }
898  return (*m_Value);
899 }
900 
901 inline
903 {
904  if ( !m_Value ) {
905  ResetValue();
906  }
907  return (*m_Value);
908 }
909 
910 ///////////////////////////////////////////////////////////
911 ////////////////// end of inline methods //////////////////
912 ///////////////////////////////////////////////////////////
913 
914 
915 
916 
917 
918 END_objects_SCOPE // namespace ncbi::objects::
919 
921 
922 
923 #endif // OBJECTS_PCSUBSTANCE_PC_INFODATA_BASE_HPP
Definition: Date.hpp:53
Compound Description/Descriptor Data.
CPC_Urn –.
Definition: PC_Urn.hpp:66
CRef –.
Definition: ncbiobj.hpp:618
Base class for all serializable objects.
Definition: serialbase.hpp:150
EResetVariant
Definition: serialbase.hpp:76
@ eDoResetVariant
Definition: serialbase.hpp:77
@ eDoNotResetVariant
Definition: serialbase.hpp:78
uint32_t Uint4
4-byte (32-bit) unsigned integer
Definition: ncbitype.h:103
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
#define NCBI_PCSUBSTANCE_EXPORT
Definition: ncbi_export.h:688
TBval GetBval(void) const
Get the variant data.
bool IsIval(void) const
Check if variant Ival is selected.
NCBI_NS_NCBI::CUnionBuffer< TBitlist > m_Bitlist
bool IsSetUrn(void) const
Universal Resource Name [for Value Qualification] Check if a value has been assigned to Urn data memb...
const TBvec & GetBvec(void) const
Get the variant data.
TFval & SetFval(void)
Select the variant.
bool CanGetValue(void) const
Check if it is safe to call GetValue method.
void ResetValue(void)
Reset Value data member.
Tparent::CMemberIndex< E_memberIndex, 3 > TmemberIndex
const TFvec & GetFvec(void) const
Get the variant data.
bool IsFvec(void) const
Check if variant Fvec is selected.
const TUrn & GetUrn(void) const
Get the Urn member data.
void CheckSelected(E_Choice index) const
Verify selection, throw exception if it differs from the expected.
TBinary & SetBinary(void)
Select the variant.
bool IsDate(void) const
Check if variant Date is selected.
NCBI_NS_NCBI::CSerialObject * m_object
TIval GetIval(void) const
Get the variant data.
NCBI_NS_NCBI::CUnionBuffer< TBinary > m_Binary
bool CanGetUrn(void) const
Check if it is safe to call GetUrn method.
bool IsSetValue(void) const
Check if a value has been assigned to Value data member.
bool IsSval(void) const
Check if variant Sval is selected.
TIval & SetIval(void)
Select the variant.
bool IsIvec(void) const
Check if variant Ivec is selected.
C_Value(const C_Value &)
const TSval & GetSval(void) const
Get the variant data.
NCBI_NS_NCBI::CUnionBuffer< TIvec > m_Ivec
const TBitlist & GetBitlist(void) const
Get the variant data.
C_Value & operator=(const C_Value &)
E_Choice Which(void) const
Which variant is currently selected.
const TIvec & GetIvec(void) const
Get the variant data.
TSval & SetSval(void)
Select the variant.
CRef< TUrn > m_Urn
NCBI_NS_NCBI::CUnionBuffer< TFvec > m_Fvec
NCBI_NS_NCBI::CUnionBuffer< TSlist > m_Slist
bool IsBval(void) const
Check if variant Bval is selected.
TUrn & SetUrn(void)
Assign a value to Urn data member.
TSlist & SetSlist(void)
Select the variant.
CPC_InfoData_Base & operator=(const CPC_InfoData_Base &)
bool IsBinary(void) const
Check if variant Binary is selected.
bool IsSlist(void) const
Check if variant Slist is selected.
TValue & SetValue(void)
Assign a value to Value data member.
CPC_InfoData_Base(const CPC_InfoData_Base &)
TFvec & SetFvec(void)
Select the variant.
TBitlist & SetBitlist(void)
Select the variant.
const TSlist & GetSlist(void) const
Get the variant data.
NCBI_NS_NCBI::CUnionBuffer< TBvec > m_Bvec
E_ChoiceStopper
Maximum+1 value of the choice variant enumerator.
TIvec & SetIvec(void)
Select the variant.
TBvec & SetBvec(void)
Select the variant.
const TValue & GetValue(void) const
Get the Value member data.
const TBinary & GetBinary(void) const
Get the variant data.
TFval GetFval(void) const
Get the variant data.
NCBI_NS_NCBI::CUnionBuffer< NCBI_NS_STD::string > m_string
void Select(E_Choice index, EResetVariant reset, CObjectMemoryPool *pool)
Select the requested variant if needed, allocating CObject variants from memory pool.
CSerialObject Tparent
CRef< TValue > m_Value
bool IsBitlist(void) const
Check if variant Bitlist is selected.
TBval & SetBval(void)
Select the variant.
void Select(E_Choice index, EResetVariant reset=eDoResetVariant)
Select the requested variant if needed.
bool IsBvec(void) const
Check if variant Bvec is selected.
bool IsFval(void) const
Check if variant Fval is selected.
void ResetUrn(void)
Reset Urn data member.
@ e_Bval
Boolean or Binary.
@ e_Slist
List of Strings.
@ e_Fval
Float or Double.
@ e_Ival
Integer (signed or unsigned)
@ e_not_set
const GenericPointer< typename T::ValueType > T2 value
Definition: pointer.h:1227
Modified on Sun Apr 21 03:37:49 2024 by modify_doxy.py rev. 669887