41 #ifndef GUI_OBJECTS_PLUGINVALUECONSTRAINT_BASE_HPP
42 #define GUI_OBJECTS_PLUGINVALUECONSTRAINT_BASE_HPP
56 #ifndef BEGIN_objects_SCOPE
57 # define BEGIN_objects_SCOPE BEGIN_SCOPE(objects)
58 # define END_objects_SCOPE END_SCOPE(objects)
123 virtual void Reset(
void);
126 virtual void ResetSelection(
void);
132 E_Choice Which(
void)
const;
138 void CheckSelected(E_Choice index)
const;
144 NCBI_NORETURN
void ThrowInvalidSelection(E_Choice index)
const;
152 static string SelectionName(E_Choice index);
195 bool IsLower(
void)
const;
201 const TLower& GetLower(
void)
const;
222 bool IsUpper(
void)
const;
228 const TUpper& GetUpper(
void)
const;
249 bool IsRange(
void)
const;
255 const TRange& GetRange(
void)
const;
275 bool IsSet(
void)
const;
281 const TSet& GetSet(
void)
const;
296 bool IsSeq_repr(
void)
const;
302 const TSeq_repr& GetSeq_repr(
void)
const;
317 bool IsSeq_mol(
void)
const;
323 const TSeq_mol& GetSeq_mol(
void)
const;
337 bool IsSeq_mol_same_type(
void)
const;
340 void SetSeq_mol_same_type(
void);
349 bool IsSeq_length_lower(
void)
const;
376 bool IsSeq_length_upper(
void)
const;
403 bool IsSeq_length_range(
void)
const;
428 bool IsSeq_length_same(
void)
const;
431 void SetSeq_length_same(
void);
440 bool IsEntry_type(
void)
const;
467 bool IsAnnot_type(
void)
const;
494 bool IsFeat_type(
void)
const;
515 bool IsFeat_subtype(
void)
const;
535 bool IsFeat_has_product(
void)
const;
538 void SetFeat_has_product(
void);
547 bool IsProject_item_type(
void)
const;
577 static const char*
const sm_SelectionNames[];
580 NCBI_NS_NCBI::CUnionBuffer<TSet>
m_Set;
589 NCBI_NS_NCBI::CUnionBuffer<NCBI_NS_STD::string>
m_string;
Base class for all serializable objects.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define NCBI_GUIOBJECTS_EXPORT
bool IsLower(void) const
Check if variant Lower is selected.
TFeat_subtype & SetFeat_subtype(void)
Select the variant.
bool IsAnnot_type(void) const
Check if variant Annot_type is selected.
bool IsRange(void) const
Check if variant Range is selected.
TSeq_length_upper & SetSeq_length_upper(void)
Select the variant.
TSeq_length_lower GetSeq_length_lower(void) const
Get the variant data.
TEntry_type & SetEntry_type(void)
Select the variant.
const TSet & GetSet(void) const
Get the variant data.
E_ChoiceStopper
Maximum+1 value of the choice variant enumerator.
virtual void ResetSelection(void)
Reset the selection (set it to e_not_set).
NCBI_NS_NCBI::CUnionBuffer< TSeq_mol > m_Seq_mol
TSet & SetSet(void)
Select the variant.
const TProject_item_type & GetProject_item_type(void) const
Get the variant data.
bool IsSeq_mol(void) const
Check if variant Seq_mol is selected.
TSeq_length_lower m_Seq_length_lower
bool IsSeq_length_lower(void) const
Check if variant Seq_length_lower is selected.
list< int > TFeat_subtype
void Select(E_Choice index, EResetVariant reset, CObjectMemoryPool *pool)
Select the requested variant if needed, allocating CObject variants from memory pool.
TSeq_length_upper m_Seq_length_upper
NCBI_NS_NCBI::CUnionBuffer< NCBI_NS_STD::string > m_string
TSeq_length_lower & SetSeq_length_lower(void)
Select the variant.
NCBI_NS_NCBI::CUnionBuffer< TFeat_type > m_Feat_type
TSeq_repr & SetSeq_repr(void)
Select the variant.
TUpper & SetUpper(void)
Select the variant.
TAnnot_type & SetAnnot_type(void)
Select the variant.
void DoSelect(E_Choice index, CObjectMemoryPool *pool=0)
DECLARE_INTERNAL_TYPE_INFO()
void SetSeq_length_same(void)
Select the variant.
bool IsSeq_length_upper(void) const
Check if variant Seq_length_upper is selected.
NCBI_NS_NCBI::CUnionBuffer< TSeq_repr > m_Seq_repr
TFeat_type & SetFeat_type(void)
Select the variant.
NCBI_NS_NCBI::CUnionBuffer< TFeat_type > m_Feat_type
bool IsSeq_length_range(void) const
Check if variant Seq_length_range is selected.
CPluginValueConstraint_Base & operator=(const CPluginValueConstraint_Base &)
E_Choice Which(void) const
Which variant is currently selected.
TSeq_length_upper GetSeq_length_upper(void) const
Get the variant data.
TEntry_type GetEntry_type(void) const
Get the variant data.
NCBI_NS_NCBI::CUnionBuffer< TFeat_subtype > m_Feat_subtype
NCBI_NS_NCBI::CSerialObject * m_object
bool IsSet(void) const
Check if variant Set is selected.
NCBI_NS_NCBI::CUnionBuffer< TSeq_mol > m_Seq_mol
bool IsFeat_subtype(void) const
Check if variant Feat_subtype is selected.
const TLower & GetLower(void) const
Get the variant data.
bool IsSeq_repr(void) const
Check if variant Seq_repr is selected.
TSeq_length_upper m_Seq_length_upper
void Select(E_Choice index, EResetVariant reset=eDoResetVariant)
Select the requested variant if needed.
NCBI_NS_NCBI::CUnionBuffer< TSet > m_Set
CPluginValueRangeConstraint TRange
bool IsSeq_mol_same_type(void) const
Check if variant Seq_mol_same_type is selected.
void SetSeq_mol_same_type(void)
Select the variant.
const TSeq_mol & GetSeq_mol(void) const
Get the variant data.
const TFeat_type & GetFeat_type(void) const
Get the variant data.
NCBI_NS_NCBI::CUnionBuffer< TFeat_subtype > m_Feat_subtype
const TFeat_subtype & GetFeat_subtype(void) const
Get the variant data.
bool IsFeat_has_product(void) const
Check if variant Feat_has_product is selected.
void SetFeat_has_product(void)
Select the variant.
string TProject_item_type
TSeq_mol & SetSeq_mol(void)
Select the variant.
NCBI_NS_NCBI::CUnionBuffer< TSeq_repr > m_Seq_repr
const TSeq_repr & GetSeq_repr(void) const
Get the variant data.
bool IsSeq_length_same(void) const
Check if variant Seq_length_same is selected.
TLower & SetLower(void)
Select the variant.
CPluginValueRangeConstraint TSeq_length_range
CPluginValueConstraint_Base(const CPluginValueConstraint_Base &)
NCBI_NS_NCBI::CUnionBuffer< TSet > m_Set
void ThrowInvalidSelection(E_Choice index) const
Throw 'InvalidSelection' exception.
TSeq_length_lower m_Seq_length_lower
bool IsUpper(void) const
Check if variant Upper is selected.
NCBI_NS_NCBI::CUnionBuffer< NCBI_NS_STD::string > m_string
bool IsProject_item_type(void) const
Check if variant Project_item_type is selected.
TProject_item_type & SetProject_item_type(void)
Select the variant.
const TUpper & GetUpper(void) const
Get the variant data.
void CheckSelected(E_Choice index) const
Verify selection, throw exception if it differs from the expected.
bool IsFeat_type(void) const
Check if variant Feat_type is selected.
bool IsEntry_type(void) const
Check if variant Entry_type is selected.
TAnnot_type GetAnnot_type(void) const
Get the variant data.
@ e_not_set
No variant selected.
Defines to provide correct exporting from DLLs in Windows.
const GenericPointer< typename T::ValueType > T2 value