⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 proj_item.cpp

📁 ncbi源码
💻 CPP
字号:
/* * =========================================================================== * PRODUCTION $Log: proj_item.cpp,v $ * PRODUCTION Revision 1000.1  2004/06/01 18:31:23  gouriano * PRODUCTION PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.23 * PRODUCTION * =========================================================================== *//* $Id: proj_item.cpp,v 1000.1 2004/06/01 18:31:23 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. * * =========================================================================== * * Author:  Viatcheslav Gorelenkov * */#include <ncbi_pch.hpp>#include <app/project_tree_builder/proj_item.hpp>BEGIN_NCBI_SCOPE//-----------------------------------------------------------------------------CProjKey::CProjKey(void):m_Type(eNoProj){}CProjKey::CProjKey(TProjType type, const string& project_id):m_Type(type), m_Id  (project_id){}CProjKey::CProjKey(const CProjKey& key):m_Type(key.m_Type), m_Id  (key.m_Id){}CProjKey& CProjKey::operator= (const CProjKey& key){    if (this != &key) {        m_Type = key.m_Type;        m_Id   = key.m_Id;    }    return *this;}CProjKey::~CProjKey(void){}bool CProjKey::operator< (const CProjKey& key) const{    if (m_Type < key.m_Type)        return true;    else if (m_Type > key.m_Type)        return false;    else        return m_Id < key.m_Id;}bool CProjKey::operator== (const CProjKey& key) const{    return m_Type == key.m_Type && m_Id == key.m_Id;}bool CProjKey::operator!= (const CProjKey& key) const{    return !(*this == key);}CProjKey::TProjType CProjKey::Type(void) const{    return m_Type;}const string& CProjKey::Id(void) const{    return m_Id;}//-----------------------------------------------------------------------------CProjItem::CProjItem(void){    Clear();}CProjItem::CProjItem(const CProjItem& item){    SetFrom(item);}CProjItem& CProjItem::operator= (const CProjItem& item){    if (this != &item) {        Clear();        SetFrom(item);    }    return *this;}CProjItem::CProjItem(TProjType type,                     const string& name,                     const string& id,                     const string& sources_base,                     const list<string>&   sources,                      const list<CProjKey>& depends,                     const list<string>&   requires,                     const list<string>&   libs_3_party,                     const list<string>&   include_dirs,                     const list<string>&   defines)   :m_Name    (name),     m_ID      (id),    m_ProjType(type),    m_SourcesBaseDir (sources_base),    m_Sources (sources),     m_Depends (depends),    m_Requires(requires),    m_Libs3Party (libs_3_party),    m_IncludeDirs(include_dirs),    m_Defines (defines){}CProjItem::~CProjItem(void){    Clear();}void CProjItem::Clear(void){    m_ProjType = CProjKey::eNoProj;}void CProjItem::SetFrom(const CProjItem& item){    m_Name           = item.m_Name;    m_ID		     = item.m_ID;    m_ProjType       = item.m_ProjType;    m_SourcesBaseDir = item.m_SourcesBaseDir;    m_Sources        = item.m_Sources;    m_Depends        = item.m_Depends;    m_Requires       = item.m_Requires;    m_Libs3Party     = item.m_Libs3Party;    m_IncludeDirs    = item.m_IncludeDirs;    m_DatatoolSources= item.m_DatatoolSources;    m_Defines        = item.m_Defines;    m_NcbiCLibs      = item.m_NcbiCLibs;}END_NCBI_SCOPE/* * =========================================================================== * $Log: proj_item.cpp,v $ * Revision 1000.1  2004/06/01 18:31:23  gouriano * PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.23 * * Revision 1.23  2004/05/21 21:41:41  gorelenk * Added PCH ncbi_pch.hpp * * Revision 1.22  2004/03/02 16:32:06  gorelenk * Implementation of classes CProjectItemsTree CCyclicDepends * SProjectTreeFolder CProjectTreeFolders moved to proj_tree.cpp * Implementation of classes SMakeProjectT SAppProjectT SLibProjectT * SAsnProjectT SAsnProjectSingleT SAsnProjectMultipleT and * CProjectTreeBuilder moved to proj_tree_builder.cpp. * * Revision 1.21  2004/03/01 17:59:35  gorelenk * Added implementation of class CCyclicDepends member-functions. * * Revision 1.20  2004/02/27 18:08:25  gorelenk * Changed implementation of CProjectTreeBuilder::ProcessDir. * * Revision 1.19  2004/02/26 21:29:04  gorelenk * Changed implementations of member-functions of class CProjectTreeBuilder: * BuildProjectTree, BuildOneProjectTree and ProcessDir because of use * IProjectFilter* filter instead of const string& subtree_to_build. * * Revision 1.18  2004/02/24 17:20:11  gorelenk * Added implementation of member-function CreateNcbiCToolkitLibs * of struct SAppProjectT. * Changed implementation of member-function DoCreate * of struct SAppProjectT. * * Revision 1.17  2004/02/23 20:58:41  gorelenk * Fixed double properties apperience in generated MSVC projects. * * Revision 1.16  2004/02/20 22:53:59  gorelenk * Added analysis of ASN projects depends. * * Revision 1.15  2004/02/18 23:35:40  gorelenk * Added special processing for NCBI_C_LIBS tag. * * Revision 1.14  2004/02/13 16:02:24  gorelenk * Modified procedure of depends resolve. * * Revision 1.13  2004/02/11 16:46:29  gorelenk * Cnanged LOG_POST message. * * Revision 1.12  2004/02/10 21:20:44  gorelenk * Added support of DATATOOL_SRC tag. * * Revision 1.11  2004/02/10 18:17:05  gorelenk * Added support of depends fine-tuning. * * Revision 1.10  2004/02/06 23:15:00  gorelenk * Implemented support of ASN projects, semi-auto configure, * CPPFLAGS support. Second working version. * * Revision 1.9  2004/02/04 23:58:29  gorelenk * Added support of include dirs and 3-rd party libs. * * Revision 1.8  2004/02/03 17:12:55  gorelenk * Changed implementation of classes CProjItem and CProjectItemsTree. * * Revision 1.7  2004/01/30 20:44:22  gorelenk * Initial revision. * * Revision 1.6  2004/01/28 17:55:50  gorelenk * += For msvc makefile support of : *                 Requires tag, ExcludeProject tag, *                 AddToProject section (SourceFiles and IncludeDirs), *                 CustomBuild section. * += For support of user local site. * * Revision 1.5  2004/01/26 19:27:30  gorelenk * += MSVC meta makefile support * += MSVC project makefile support * * Revision 1.4  2004/01/22 17:57:55  gorelenk * first version * * =========================================================================== */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -