/usr/include/ncbi/objsset.h is in libncbi6-dev 6.1.20110713-3ubuntu2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 | /* objsset.h
* ===========================================================================
*
* 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 Name: objsset.h
*
* Author: James Ostell
*
* Version Creation Date: 4/1/91
*
* $Revision: 6.9 $
*
* File Description: Object manager interface for module NCBI-Seqset
*
* Modifications:
* --------------------------------------------------------------------------
* Date Name Description of modification
* ------- ---------- -----------------------------------------------------
*
* ==========================================================================
*/
#ifndef _NCBI_Seqset_
#define _NCBI_Seqset_
#ifndef _ASNTOOL_
#include <asn.h>
#endif
#ifndef _NCBI_General_
#include <objgen.h>
#endif
#ifndef _NCBI_Seq_
#include <objseq.h>
#endif
#undef NLM_EXTERN
#ifdef NLM_IMPORT
#define NLM_EXTERN NLM_IMPORT
#else
#define NLM_EXTERN extern
#endif
#ifdef __cplusplus
extern "C" {
#endif
/*****************************************************************************
*
* loader
*
*****************************************************************************/
NLM_EXTERN Boolean LIBCALL SeqSetAsnLoad PROTO((void));
/*****************************************************************************
*
* internal structures for NCBI-Seqset objects
*
*****************************************************************************/
/*****************************************************************************
*
* BioseqSet - a collection of sequences
*
*****************************************************************************/
typedef struct seqset {
ObjectIdPtr id;
DbtagPtr coll;
Int2 level; /* set to INT2_MIN (ncbilcl.h) for not used */
Uint1 _class;
CharPtr release;
DatePtr date;
ValNodePtr descr;
SeqEntryPtr seq_set;
SeqAnnotPtr annot;
GatherIndex idx; /* internal gather/objmgr tracking fields */
SeqEntryPtr seqentry; /* internal seqentry that points to this bioseqset */
} BioseqSet, PNTR BioseqSetPtr;
NLM_EXTERN BioseqSetPtr LIBCALL BioseqSetNew PROTO((void));
NLM_EXTERN Boolean LIBCALL BioseqSetAsnWrite PROTO((BioseqSetPtr bsp, AsnIoPtr aip, AsnTypePtr atp));
NLM_EXTERN BioseqSetPtr LIBCALL BioseqSetAsnRead PROTO((AsnIoPtr aip, AsnTypePtr atp));
NLM_EXTERN BioseqSetPtr LIBCALL BioseqSetFree PROTO((BioseqSetPtr bsp));
NLM_EXTERN Int2 LIBCALL BioseqSetLabel PROTO((BioseqSetPtr bssp, CharPtr buffer, Int2 buflen, Uint1 content));
/*****************************************************************************
*
* defines for BioseqSet._class
not-set (0) ,
nuc-prot (1) , -- nuc acid and coded proteins
segset (2) , -- segmented sequence + parts
conset (3) , -- constructed sequence + parts
parts (4) , -- parts for 2 or 3
gibb (5) , -- geninfo backbone
gi (6) , -- geninfo
genbank (7) , -- converted genbank
pir (8) , -- converted pir
pub-set (9) , -- all the seqs from a single publication
equiv (10) , -- a set of equivalent maps or seqs
swissprot (11) , -- converted SWISSPROT
pdb-entry (12) , -- a complete PDB entry
mut-set (13) , -- set of mutations
pop-set (14) , -- population study
phy-set (15) , -- phylogenetic study
eco-set (16) , -- ecological sample study
gen-prod-set (17) , -- genomic products, chrom+mRNa+protein
wgs-set (18) , -- whole genome shotgun project
named-annot (19) , -- named annotation set
named-annot-prod (20) , -- with instantiated mRNA+protein
read-set (21) , -- set from a single read
paired-end-reads (22) , -- paired sequences within a read-set
small-genome-set (23) , -- viral segments or mitochondrial minicircles
other (255) } DEFAULT not-set ,
*
******************************************************************************/
#define BioseqseqSet_class_not_set 0
#define BioseqseqSet_class_nuc_prot 1
#define BioseqseqSet_class_segset 2
#define BioseqseqSet_class_conset 3
#define BioseqseqSet_class_parts 4
#define BioseqseqSet_class_gibb 5
#define BioseqseqSet_class_gi 6
#define BioseqseqSet_class_genbank 7
#define BioseqseqSet_class_pir 8
#define BioseqseqSet_class_pub_set 9
#define BioseqseqSet_class_equiv 10
#define BioseqseqSet_class_swissprot 11
#define BioseqseqSet_class_pdb_entry 12
#define BioseqseqSet_class_mut_set 13
#define BioseqseqSet_class_pop_set 14
#define BioseqseqSet_class_phy_set 15
#define BioseqseqSet_class_eco_set 16
#define BioseqseqSet_class_gen_prod_set 17
#define BioseqseqSet_class_wgs_set 18
#define BioseqseqSet_class_named_annot 19
#define BioseqseqSet_class_named_annot_prod 20
#define BioseqseqSet_class_read_set 21
#define BioseqseqSet_class_paired_end_reads 22
#define BioseqseqSet_class_small_genome_set 23
/* for temporary internal use to prevent automatic freeing */
#define BioseqseqSet_class_empty_set 254
#define BioseqseqSet_class_other 255
/*****************************************************************************
*
* BioseqSetFreeComponents(bsp, parts)
* Frees associated data of a BioseqSet
* if (parts == FALSE)
* Calls SeqEntryFreeComponents() for seq-set
* else
* Calls SeqEntryFree()
* Does not free the BioseqSet itself
* Called by BioseqSetFree
* Used by SeqMgr for caching out
*
*****************************************************************************/
NLM_EXTERN BioseqSetPtr LIBCALL BioseqSetFreeComponents PROTO((BioseqSetPtr bsp, Boolean parts));
/*****************************************************************************
*
* SeqEntry - implemented as an ValNode
* choice:
* 1 = Bioseq
* 2 = Bioseq-set
*
*****************************************************************************/
NLM_EXTERN SeqEntryPtr LIBCALL SeqEntryNew PROTO((void));
NLM_EXTERN Boolean LIBCALL SeqEntryAsnWrite PROTO((SeqEntryPtr sep, AsnIoPtr aip, AsnTypePtr atp));
NLM_EXTERN SeqEntryPtr LIBCALL SeqEntryAsnRead PROTO((AsnIoPtr aip, AsnTypePtr atp));
NLM_EXTERN SeqEntryPtr LIBCALL SeqEntryFree PROTO((SeqEntryPtr sep));
NLM_EXTERN Int2 LIBCALL SeqEntryLabel PROTO((SeqEntryPtr sep, CharPtr buffer, Int2 buflen, Uint1 content));
/*****************************************************************************
*
* SeqEntryFreeComponents(sep)
* Frees components of elements associated with SeqEntry
* used by SeqMgr for caching out
*
*****************************************************************************/
NLM_EXTERN SeqEntryPtr LIBCALL SeqEntryFreeComponents PROTO((SeqEntryPtr sep));
/*****************************************************************************
*
* Options for SeqEntryAsnRead()
*
*****************************************************************************/
NLM_EXTERN SeqEntryPtr LIBCALL SeqEntryAsnGet PROTO((AsnIoPtr aip, AsnTypePtr atp, SeqIdPtr sip, Int2 retcode));
#define SEQENTRY_OPTION_MAX_COMPLEX 1 /* option type to use with OP_NCBIOBJSSET */
/* values for retcode, implemented with AsnIoOptions */
#define SEQENTRY_READ_BIOSEQ 1 /* read only Bioseq identified by sip */
#define SEQENTRY_READ_SEG_SET 2 /* read any seg-set it may be part of */
#define SEQENTRY_READ_NUC_PROT 3 /* read any nuc-prot set it may be in */
#define SEQENTRY_READ_PUB_SET 4 /* read pub-set it may be part of */
typedef struct objsset_option {
SeqIdPtr sip; /* seq-id to find */
Int2 retcode; /* type of set/seq to return */
Boolean in_right_set;
Uint1 working_on_set; /* 2, if in first set of retcode type */
/* 1, if found Bioseq, but not right set */
/* 0, if Bioseq not yet found */
} Op_objsset, PNTR Op_objssetPtr;
#define IS_Bioseq(a) ((a)->choice == 1)
#define IS_Bioseq_set(a) ((a)->choice == 2)
/*****************************************************************************
*
* loader for ObjSeqSet and Sequence Codes
*
*****************************************************************************/
NLM_EXTERN Boolean LIBCALL SeqEntryLoad PROTO((void));
#ifdef __cplusplus
}
#endif
#undef NLM_EXTERN
#ifdef NLM_EXPORT
#define NLM_EXTERN NLM_EXPORT
#else
#define NLM_EXTERN
#endif
#endif
|