1 #ifndef OBJECTS_GENERAL___UOCONV__HPP 2 #define OBJECTS_GENERAL___UOCONV__HPP 3 4 /* $Id: uoconv.hpp 103491 2007-05-04 17:18:18Z kazimird $ 5 * =========================================================================== 6 * 7 * PUBLIC DOMAIN NOTICE 8 * National Center for Biotechnology Information 9 * 10 * This software/database is a "United States Government Work" under the 11 * terms of the United States Copyright Act. It was written as part of 12 * the author's official duties as a United States Government employee and 13 * thus cannot be copyrighted. This software/database is freely available 14 * to the public for use. The National Library of Medicine and the U.S. 15 * Government have not placed any restriction on its use or reproduction. 16 * 17 * Although all reasonable efforts have been taken to ensure the accuracy 18 * and reliability of the software and data, the NLM and the U.S. 19 * Government do not and cannot warrant the performance or results that 20 * may be obtained by using this software or data. The NLM and the U.S. 21 * Government disclaim all warranties, express or implied, including 22 * warranties of performance, merchantability or fitness for any particular 23 * purpose. 24 * 25 * Please cite the author in any work or product based on this material. 26 * 27 * =========================================================================== 28 * 29 * Author: Aaron Ucko 30 * 31 */ 32 33 /// @file uoconv.hpp 34 /// Converts between User-objects and arbitrary other serializable objects. 35 36 #include <serial/objectinfo.hpp> 37 38 BEGIN_NCBI_SCOPE 39 BEGIN_SCOPE(objects) 40 41 class CUser_object; 42 43 NCBI_GENERAL_EXPORT 44 CRef<CUser_object> PackAsUserObject(CConstObjectInfo obj); 45 46 NCBI_GENERAL_EXPORT 47 void UnpackUserObject(const CUser_object& uo, CObjectInfo obj); 48 49 NCBI_GENERAL_EXPORT 50 CObjectInfo UnpackUserObject(const CUser_object& uo, const CTypeInfo* ti); 51 52 END_SCOPE(objects) 53 END_NCBI_SCOPE 54 55 #endif /* OBJECTS_GENERAL___UOCONV__HPP */ 56