~ubuntu-branches/ubuntu/feisty/ncbi-tools6/feisty

« back to all changes in this revision

Viewing changes to api/seqmgr.h

  • Committer: Bazaar Package Importer
  • Author(s): Aaron M. Ucko
  • Date: 2006-01-12 18:50:27 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20060112185027-88f9xtb35uekr1v7
Tags: 6.1.20051206-1
* New upstream release.
* Temporarily switch to pmake (added to Build-Depends) for upstream's
  makefiles, as GNU make 3.81.b4 gets mysteriously confused when trying
  to build from them (but, oddly, only when invoked from debian/rules).
* Add "new" blastall_old executable to the blast2 package.
* Reshuffle documents slightly, and make sure to register all top-level
  HTML documents with doc-base.
* Loosen libncbi6's dependency on ncbi-data to accommodate binary-only
  NMUs.

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
*   
30
30
* Version Creation Date: 9/94
31
31
*
32
 
* $Revision: 6.57 $
 
32
* $Revision: 6.58 $
33
33
*
34
34
* File Description:  Manager for Bioseqs and BioseqSets
35
35
*
40
40
*
41
41
*
42
42
* $Log: seqmgr.h,v $
 
43
* Revision 6.58  2005/08/18 21:02:34  kans
 
44
* defined SMFidItemPtr structure and added featsByFeatID and numfids fields, in preparation for indexing by feature ID
 
45
*
43
46
* Revision 6.57  2005/04/01 20:57:48  kans
44
47
* SIDPreCacheFunc and LookupFarSeqIDs take new argument for SP block and other places for gi numbers to hide
45
48
*
928
931
  Uint1        seqdesctype; /* seqdesc subtype */
929
932
} SMDescItem, PNTR SMDescItemPtr;
930
933
 
 
934
typedef struct smfiditem {
 
935
  SMFeatItemPtr  feat;
 
936
  CharPtr        fid;       /* string with numeric or alpha local feature ID */
 
937
} SMFidItem, PNTR SMFidItemPtr;
 
938
 
931
939
typedef struct bioseqextra {
932
940
  BioseqPtr           bsp;
933
941
  ObjMgrDataPtr       omdp;
934
 
  SeqFeatPtr          protFeat;       /* protein feature on whole protein bioseq gives name */
935
 
  SeqFeatPtr          cdsOrRnaFeat;   /* cds or rna whose product points to this bioseq */
936
 
  ValNodePtr          prodlisthead;   /* all features whose product points to this bioseq */
937
 
 
938
 
  SMFeatBlockPtr      featlisthead;   /* linked list of SMFeatItem chunks, arrays point to elements */
939
 
  SMFeatBlockPtr      featlisttail;   /* current block in linked list of SMFeatItem chunks */
940
 
 
941
 
  ValNodePtr          desclisthead;   /* linked list of ValNodes pointing to SMDescItem structures */
942
 
 
943
 
  SMDescItemPtr PNTR  descrsByID;     /* array of all descriptors on bioseq in original itemID order */
944
 
  SMDescItemPtr PNTR  descrsBySdp;    /* array of all features on bioseq sorted by SeqDescrPtr */
945
 
  SMDescItemPtr PNTR  descrsByIndex;  /* array of all features on bioseq sorted by order of presentation */
946
 
 
947
 
  AnnotDescPtr PNTR   annotDescByID;  /* array of all AnnotDesc (on entity) in original itemID order */
948
 
 
949
 
  SeqAlignPtr PNTR    alignsByID;     /* array of all alignments (on entity) in original itemID order */
950
 
 
951
 
  SMFeatItemPtr PNTR  featsByID;      /* array of all features on bioseq in original itemID order */
952
 
  SMFeatItemPtr PNTR  featsBySfp;     /* array of all features on bioseq sorted by SeqFeatPtr */
953
 
  SMFeatItemPtr PNTR  featsByPos;     /* array of all features on bioseq sorted by location */
954
 
  SMFeatItemPtr PNTR  featsByRev;     /* array of all features on bioseq sorted by reverse location */
955
 
  SMFeatItemPtr PNTR  featsByLabel;   /* array of all features on bioseq sorted by label */
956
 
 
957
 
  SMFeatItemPtr PNTR  genesByPos;     /* subset of featsByPos array containing only gene features */
958
 
  SMFeatItemPtr PNTR  mRNAsByPos;     /* subset of featsByPos array containing only mRNA features */
959
 
  SMFeatItemPtr PNTR  CDSsByPos;      /* subset of featsByPos array containing only CDS features */
960
 
  SMFeatItemPtr PNTR  pubsByPos;      /* subset of featsByPos array containing only publication features */
961
 
  SMFeatItemPtr PNTR  orgsByPos;      /* subset of featsByPos array containing only biosource features */
962
 
  SMFeatItemPtr PNTR  operonsByPos;   /* subset of featsByPos array containing only operon features */
963
 
 
964
 
  SMFeatItemPtr PNTR  genesByLocusTag;  /* array of gene features sorted by locus_tag */
965
 
 
966
 
  BioseqPtr           parentBioseq;   /* segmented parent of this raw part all packaged together */
967
 
  SMSeqIdxPtr         segparthead;    /* linked list to speed mapping from parts to segmented bioseq */
968
 
 
969
 
  SMSeqIdxPtr PNTR    partsByLoc;     /* array of parts on segmented bioseq sorted by location */
970
 
  SMSeqIdxPtr PNTR    partsBySeqId;   /* array of parts on segmented bioseq sorted by reverse uppercase seqID */
971
 
 
972
 
  Int4                numdescs;       /* number of elements in descrsByID, descrsBySdp, and descrsByIndex arrays */
973
 
  Int4                numannotdesc;   /* number of elements in annotDescByID array */
974
 
  Int4                numaligns;      /* number of elements in alignsByID array */
975
 
  Int4                numfeats;       /* number of elements in featsByID, featsBySfp and featsByPos arrays */
976
 
  Int4                numgenes;       /* number of elements in genesByPos array */
977
 
  Int4                nummRNAs;       /* number of elements in mRNAsByPos array */
978
 
  Int4                numCDSs;        /* number of elements in CDSsByPos array */
979
 
  Int4                numpubs;        /* number of elements in pubsByPos array */
980
 
  Int4                numorgs;        /* number of elements in orgsByPos array */
981
 
  Int4                numoperons;     /* number of elements in operonsByPos array */
982
 
 
983
 
  Int4                numsegs;        /* number of segments in partslist array */
984
 
 
985
 
  Int4                min;            /* used for finding best protein feature */
986
 
  Uint4               bspItemID;      /* for bioseq explore functions */
987
 
  Uint4               bspIndex;       /* for bioseq explore functions */
988
 
  Int2                blocksize;      /* size of SMFeatBlock.data array to avoid wasting space */
989
 
                                      /* additional fields to map between genome record and parts,
990
 
                                         genomic DNA and mRNA, and mRNA and protein */
 
942
  SeqFeatPtr          protFeat;        /* protein feature on whole protein bioseq gives name */
 
943
  SeqFeatPtr          cdsOrRnaFeat;    /* cds or rna whose product points to this bioseq */
 
944
  ValNodePtr          prodlisthead;    /* all features whose product points to this bioseq */
 
945
 
 
946
  SMFeatBlockPtr      featlisthead;    /* linked list of SMFeatItem chunks, arrays point to elements */
 
947
  SMFeatBlockPtr      featlisttail;    /* current block in linked list of SMFeatItem chunks */
 
948
 
 
949
  ValNodePtr          desclisthead;    /* linked list of ValNodes pointing to SMDescItem structures */
 
950
 
 
951
  SMDescItemPtr PNTR  descrsByID;      /* array of all descriptors on bioseq in original itemID order */
 
952
  SMDescItemPtr PNTR  descrsBySdp;     /* array of all features on bioseq sorted by SeqDescrPtr */
 
953
  SMDescItemPtr PNTR  descrsByIndex;   /* array of all features on bioseq sorted by order of presentation */
 
954
 
 
955
  AnnotDescPtr PNTR   annotDescByID;   /* array of all AnnotDesc (on entity) in original itemID order */
 
956
 
 
957
  SeqAlignPtr PNTR    alignsByID;      /* array of all alignments (on entity) in original itemID order */
 
958
 
 
959
  SMFeatItemPtr PNTR  featsByID;       /* array of all features on bioseq in original itemID order */
 
960
  SMFeatItemPtr PNTR  featsBySfp;      /* array of all features on bioseq sorted by SeqFeatPtr */
 
961
  SMFeatItemPtr PNTR  featsByPos;      /* array of all features on bioseq sorted by location */
 
962
  SMFeatItemPtr PNTR  featsByRev;      /* array of all features on bioseq sorted by reverse location */
 
963
  SMFeatItemPtr PNTR  featsByLabel;    /* array of all features on bioseq sorted by label */
 
964
 
 
965
  SMFeatItemPtr PNTR  genesByPos;      /* subset of featsByPos array containing only gene features */
 
966
  SMFeatItemPtr PNTR  mRNAsByPos;      /* subset of featsByPos array containing only mRNA features */
 
967
  SMFeatItemPtr PNTR  CDSsByPos;       /* subset of featsByPos array containing only CDS features */
 
968
  SMFeatItemPtr PNTR  pubsByPos;       /* subset of featsByPos array containing only publication features */
 
969
  SMFeatItemPtr PNTR  orgsByPos;       /* subset of featsByPos array containing only biosource features */
 
970
  SMFeatItemPtr PNTR  operonsByPos;    /* subset of featsByPos array containing only operon features */
 
971
  SMFeatItemPtr PNTR  genesByLocusTag; /* array of gene features sorted by locus_tag */
 
972
 
 
973
  SMFidItemPtr PNTR   featsByFeatID;   /* array of features sorted by feature ID string */
 
974
 
 
975
  BioseqPtr           parentBioseq;    /* segmented parent of this raw part all packaged together */
 
976
  SMSeqIdxPtr         segparthead;     /* linked list to speed mapping from parts to segmented bioseq */
 
977
 
 
978
  SMSeqIdxPtr PNTR    partsByLoc;      /* array of parts on segmented bioseq sorted by location */
 
979
  SMSeqIdxPtr PNTR    partsBySeqId;    /* array of parts on segmented bioseq sorted by reverse uppercase seqID */
 
980
 
 
981
  Int4                numdescs;        /* number of elements in descrsByID, descrsBySdp, and descrsByIndex arrays */
 
982
  Int4                numannotdesc;    /* number of elements in annotDescByID array */
 
983
  Int4                numaligns;       /* number of elements in alignsByID array */
 
984
  Int4                numfeats;        /* number of elements in featsByID, featsBySfp and featsByPos arrays */
 
985
  Int4                numgenes;        /* number of elements in genesByPos array */
 
986
  Int4                nummRNAs;        /* number of elements in mRNAsByPos array */
 
987
  Int4                numCDSs;         /* number of elements in CDSsByPos array */
 
988
  Int4                numpubs;         /* number of elements in pubsByPos array */
 
989
  Int4                numorgs;         /* number of elements in orgsByPos array */
 
990
  Int4                numoperons;      /* number of elements in operonsByPos array */
 
991
  Int4                numfids;         /* number of elements in featsByFeatID array */
 
992
 
 
993
  Int4                numsegs;         /* number of segments in partslist array */
 
994
 
 
995
  Int4                min;             /* used for finding best protein feature */
 
996
  Uint4               bspItemID;       /* for bioseq explore functions */
 
997
  Uint4               bspIndex;        /* for bioseq explore functions */
 
998
  Int2                blocksize;       /* size of SMFeatBlock.data array to avoid wasting space */
 
999
                                       /* additional fields to map between genome record and parts,
 
1000
                                          genomic DNA and mRNA, and mRNA and protein */
991
1001
} BioseqExtra, PNTR BioseqExtraPtr;
992
1002
 
993
1003
/* the following functions are not frequently called by applications */