- /*
- * ===========================================================================
- * PRODUCTION $Log: Name_.hpp,v $
- * PRODUCTION Revision 1000.1 2004/04/12 17:19:47 gouriano
- * PRODUCTION PRODUCTION: UPGRADED [CATCHUP_003] Dev-tree R1.5
- * PRODUCTION
- * ===========================================================================
- */
- /* $Id: Name_.hpp,v 1000.1 2004/04/12 17:19:47 gouriano Exp $
- * ===========================================================================
- *
- * PUBLIC DOMAIN NOTICE
- * National Center for Biotechnology Information
- *
- * This software/database is a "United States Government Work" under the
- * terms of the United States Copyright Act. It was written as part of
- * the author's official duties as a United States Government employee and
- * thus cannot be copyrighted. This software/database is freely available
- * to the public for use. The National Library of Medicine and the U.S.
- * Government have not placed any restriction on its use or reproduction.
- *
- * Although all reasonable efforts have been taken to ensure the accuracy
- * and reliability of the software and data, the NLM and the U.S.
- * Government do not and cannot warrant the performance or results that
- * may be obtained by using this software or data. The NLM and the U.S.
- * Government disclaim all warranties, express or implied, including
- * warranties of performance, merchantability or fitness for any particular
- * purpose.
- *
- * Please cite the author in any work or product based on this material.
- *
- * ===========================================================================
- *
- * File Description:
- * This code is generated by application DATATOOL
- * using specifications from the data definition file
- * 'twebenv.asn'.
- *
- * ATTENTION:
- * Don't edit or check-in this file to the CVS as this file will
- * be overridden (by DATATOOL) without warning!
- * ===========================================================================
- */
- #ifndef NAME_BASE_HPP
- #define NAME_BASE_HPP
- // standard includes
- #include <serial/serialbase.hpp>
- // generated includes
- #include <string>
- // generated classes
- class CName_Base : public ncbi::CSerialObject
- {
- typedef ncbi::CSerialObject Tparent;
- public:
- // constructor
- CName_Base(void);
- // destructor
- virtual ~CName_Base(void);
- // type info
- DECLARE_INTERNAL_TYPE_INFO();
- // types
- typedef std::string TName;
- typedef std::string TDescription;
- // getters
- // setters
- // mandatory
- // typedef std::string TName
- bool IsSetName(void) const;
- bool CanGetName(void) const;
- void ResetName(void);
- const TName& GetName(void) const;
- void SetName(const TName& value);
- TName& SetName(void);
- // optional
- // typedef std::string TDescription
- bool IsSetDescription(void) const;
- bool CanGetDescription(void) const;
- void ResetDescription(void);
- const TDescription& GetDescription(void) const;
- void SetDescription(const TDescription& value);
- TDescription& SetDescription(void);
- // reset whole object
- virtual void Reset(void);
- private:
- // Prohibit copy constructor and assignment operator
- CName_Base(const CName_Base&);
- CName_Base& operator=(const CName_Base&);
- // data
- Uint4 m_set_State[1];
- TName m_Name;
- TDescription m_Description;
- };
- ///////////////////////////////////////////////////////////
- ///////////////////// inline methods //////////////////////
- ///////////////////////////////////////////////////////////
- inline
- bool CName_Base::IsSetName(void) const
- {
- return ((m_set_State[0] & 0x3) != 0);
- }
- inline
- bool CName_Base::CanGetName(void) const
- {
- return IsSetName();
- }
- inline
- const std::string& CName_Base::GetName(void) const
- {
- if (!CanGetName()) {
- ThrowUnassigned(0);
- }
- return m_Name;
- }
- inline
- void CName_Base::SetName(const std::string& value)
- {
- m_Name = value;
- m_set_State[0] |= 0x3;
- }
- inline
- std::string& CName_Base::SetName(void)
- {
- #ifdef _DEBUG
- if (!IsSetName()) {
- m_Name = ms_UnassignedStr;
- }
- #endif
- m_set_State[0] |= 0x1;
- return m_Name;
- }
- inline
- bool CName_Base::IsSetDescription(void) const
- {
- return ((m_set_State[0] & 0xc) != 0);
- }
- inline
- bool CName_Base::CanGetDescription(void) const
- {
- return IsSetDescription();
- }
- inline
- const std::string& CName_Base::GetDescription(void) const
- {
- if (!CanGetDescription()) {
- ThrowUnassigned(1);
- }
- return m_Description;
- }
- inline
- void CName_Base::SetDescription(const std::string& value)
- {
- m_Description = value;
- m_set_State[0] |= 0xc;
- }
- inline
- std::string& CName_Base::SetDescription(void)
- {
- #ifdef _DEBUG
- if (!IsSetDescription()) {
- m_Description = ms_UnassignedStr;
- }
- #endif
- m_set_State[0] |= 0x4;
- return m_Description;
- }
- ///////////////////////////////////////////////////////////
- ////////////////// end of inline methods //////////////////
- ///////////////////////////////////////////////////////////
- #endif // NAME_BASE_HPP