📄 object.hpp
字号:
/* * =========================================================================== * PRODUCTION $Log: object.hpp,v $ * PRODUCTION Revision 1000.0 2003/10/29 17:24:38 gouriano * PRODUCTION PRODUCTION: IMPORTED [ORIGINAL] Dev-tree R1.19 * PRODUCTION * =========================================================================== */#ifndef OBJECT__HPP#define OBJECT__HPP/* $Id: object.hpp,v 1000.0 2003/10/29 17:24:38 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: Eugene Vasilchenko** File Description:* !!! PUT YOUR DESCRIPTION HERE !!!*/#include <corelib/ncbistd.hpp>#include <serial/objectinfo.hpp>#include <serial/objectiter.hpp>#include <serial/objecttype.hpp>#include <serial/objectio.hpp>BEGIN_NCBI_SCOPE//#include <serial/object.inl>END_NCBI_SCOPE#endif /* OBJECT__HPP *//* ---------------------------------------------------------------------------* $Log: object.hpp,v $* Revision 1000.0 2003/10/29 17:24:38 gouriano* PRODUCTION: IMPORTED [ORIGINAL] Dev-tree R1.19** Revision 1.19 2002/12/23 18:38:51 dicuccio* Added WIn32 export specifier: NCBI_XSERIAL_EXPORT.* Moved all CVS logs to the end.** Revision 1.18 2001/05/17 14:57:05 lavr* Typos corrected** Revision 1.17 2000/10/20 15:51:24 vasilche* Fixed data error processing.* Added interface for constructing container objects directly into output stream.* object.hpp, object.inl and object.cpp were split to* objectinfo.*, objecttype.*, objectiter.* and objectio.*.** Revision 1.16 2000/10/03 17:22:33 vasilche* Reduced header dependency.* Reduced size of debug libraries on WorkShop by 3 times.* Fixed tag allocation for parent classes.* Fixed CObject allocation/deallocation in streams.* Moved instantiation of several templates in separate source file.** Revision 1.15 2000/09/26 19:24:53 vasilche* Added user interface for setting read/write/copy hooks.** Revision 1.14 2000/09/26 17:38:07 vasilche* Fixed incomplete choiceptr implementation.* Removed temporary comments.** Revision 1.13 2000/09/18 20:00:04 vasilche* Separated CVariantInfo and CMemberInfo.* Implemented copy hooks.* All hooks now are stored in CTypeInfo/CMemberInfo/CVariantInfo.* Most type specific functions now are implemented via function pointers instead of virtual functions.** Revision 1.12 2000/09/01 13:16:00 vasilche* Implemented class/container/choice iterators.* Implemented CObjectStreamCopier for copying data without loading into memory.** Revision 1.11 2000/08/15 19:44:39 vasilche* Added Read/Write hooks:* CReadObjectHook/CWriteObjectHook for objects of specified type.* CReadClassMemberHook/CWriteClassMemberHook for specified members.* CReadChoiceVariantHook/CWriteChoiceVariant for specified choice variants.* CReadContainerElementHook/CWriteContainerElementsHook for containers.** Revision 1.10 2000/07/18 17:22:58 vasilche* GetTypeInfo & constructor of CObjectTypeInfo made public.** Revision 1.9 2000/07/06 16:21:15 vasilche* Added interface to primitive types in CObjectInfo & CConstObjectInfo.** Revision 1.8 2000/07/03 18:42:35 vasilche* Added interface to typeinfo via CObjectInfo and CConstObjectInfo.* Reduced header dependency.** Revision 1.7 2000/06/16 16:31:05 vasilche* Changed implementation of choices and classes info to allow use of the same classes in generated and user written classes.** Revision 1.6 2000/05/09 16:38:33 vasilche* CObject::GetTypeInfo now moved to CObjectGetTypeInfo::GetTypeInfo to reduce possible errors.* Added write context to CObjectOStream.* Inlined most of methods of helping class Member, Block, ByteBlock etc.** Revision 1.5 2000/05/04 16:23:10 vasilche* Updated CTypesIterator and CTypesConstInterator interface.** Revision 1.4 2000/03/29 15:55:20 vasilche* Added two versions of object info - CObjectInfo and CConstObjectInfo.* Added generic iterators by class -* CTypeIterator<class>, CTypeConstIterator<class>,* CStdTypeIterator<type>, CStdTypeConstIterator<type>,* CObjectsIterator and CObjectsConstIterator.** Revision 1.3 2000/03/07 14:05:30 vasilche* Added stream buffering to ASN.1 binary input.* Optimized class loading/storing.* Fixed bugs in processing OPTIONAL fields.** Revision 1.2 1999/08/13 20:22:57 vasilche* Fixed lot of bugs in datatool** Revision 1.1 1999/08/13 15:53:43 vasilche* C++ analog of asntool: datatool** ===========================================================================*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -