/usr/include/ncbi/saledit.h is in libvibrant6-dev 6.1.20120620-7.
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 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 | /* saledit.h
* ===========================================================================
*
* PUBLIC DOMAIN NOTICE
* National Center for Biotechnology Information (NCBI)
*
* 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 do not place any restriction on its use or reproduction.
* We would, however, appreciate having the NCBI and the author cited in
* any work or product based on this material
*
* 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.
*
* ===========================================================================
*
* File Name: saledit.h
*
* Author: Colombe Chappey
*
* Version Creation Date: 2/19/97
*
* $Revision: 6.37 $
*
* File Description:
*
* Modifications:
* --------------------------------------------------------------------------
* Date Name Description of modification
* ------- ---------- -----------------------------------------------------
*
*
* ==========================================================================
*/
#ifndef _SALEDIT_
#define _SALEDIT_
#include <ncbi.h>
#include <objseq.h>
#include <objmgr.h>
#include <objfdef.h>
#include <gather.h>
#include <vibrant.h>
#include <salsa.h>
#include <viewer.h>
#include <util/creaders/alnread.h>
typedef struct seqeditview {
FORM_MESSAGE_BLOCK
PaneL pnl;
ValNodePtr data;
VieweR graph;
PrompT pos;
TexT gototxt,
lookattxt;
TexT fromtxt, totxt;
ButtoN gotobt,
lookatbt;
GrouP btngp;
ButtoN showfeatbt;
ButtoN translatebt;
ButtoN savefeatbt;
ButtoN refreshbt;
ButtoN closebt;
ButtoN svclosebt;
ButtoN gap_choicebn;
ButtoN keep_protid1,
keep_protid2;
MenU menu_align;
IteM editmodeitem,
viewmodeitem;
IteM prefitem;
IteM undoitem;
IteM cutitem, delitem, copyitem, pasteitem, insitem;
IteM rfitem[10];
IteM conscolor;
IteM importseq,
importalg,
importnet,
expfsagitem,
expalgitem,
expasnitem;
IteM showfeatitem,
hidefeatitem;
IteM propaitem;
IteM tmpcdsnitem, tmpcdspitem;
IteM selmaster;
IteM selall,
selsubs;
IteM showdifitem,
showallitem;
IteM dotmat;
IteM alreport;
/** not used **/
IteM translateitem;
IteM codonstitem;
IteM savefeatitem;
GrouP replaceMergeCopyGroup;
GrouP rmcExtra [3];
ButtoN acceptBtn;
Boolean extended_align_menu;
Boolean extended_dist_menu;
Boolean extended_tree_menu;
} SeqEditViewForm, PNTR SeqEditViewFormPtr;
typedef struct dialogboxdata
{
FORM_MESSAGE_BLOCK
WindoW w;
TexT txt1, txt2, txt3, txt4, txt5, txt6;
LisT lst1, lst2, lst3;
ButtoN bt;
ButtoN bt2;
PopuP color[10];
Int2 align_format, mol_type;
Int2 matrix, separator;
Boolean db_bool;
PrompT prompt;
} DialogBoxData, PNTR DialogBoxDataPtr;
/*
* The SeqEditViewProcsPtr may be registered with a call to SetAppProperty
* e.g., SetAppProperty ("SeqEditDisplayForm", &viewprocs), where viewprocs
* is a persistent structure filled with callback function pointers specific
* for a given application.
*/
typedef SeqEntryPtr (LIBCALLBACK *SeqEdDwnloadProc) (CharPtr program, CharPtr accession, Int4 uid, Boolean is_na, BoolPtr is_new);
typedef struct seqeditviewprocs {
WndActnProc activateForm;
FormMessageFunc handleMessages;
Int2 minPixelWidth;
Int2 minPixelHeight;
Boolean viewer_mode;
Boolean showfeat;
Boolean extended_align_menu;
Boolean extended_dist_menu;
Boolean extended_tree_menu;
SeqEdDwnloadProc download; /* application links to Entrez network service */
Boolean Cn3D_On;
IteM conscolor;
Uint1 colorR_HL, colorG_HL, colorB_HL; /* yanli added to store highlight color */
ValNodePtr seqinfo; /* yanli added */
/* data initially filled by cn3d to store SeqId, entityID, itemID, visible status and color arrays for those sequences loaded into memory by cn3d. seqinfo->data.ptrvalue is MediaInfoPtr(see "cn3dmsg.h"), each node is for one sequence */
} SeqEditViewProcs, PNTR SeqEditViewProcsPtr;
#define REGISTER_NEW_BIOSEQ_EDIT ObjMgrProcLoad(OMPROC_EDIT,"New Edit Bioseq","BioseqEditor",OBJ_BIOSEQ,Seq_repr_raw,OBJ_BIOSEQ,Seq_repr_raw,NULL,SeqEditFunc,PROC_PRIORITY_DEFAULT)
#define REGISTER_NEW_SEQALIGN_EDIT ObjMgrProcLoad(OMPROC_EDIT, "New Edit SeqAlign","SeqAlignEditor",OBJ_SEQALIGN,0,OBJ_SEQALIGN,0,NULL,AlgEditFunc,PROC_PRIORITY_DEFAULT)
#define REGISTER_NEW_SEQANNOT_EDIT ObjMgrProcLoad(OMPROC_EDIT, "New Edit SeqAnnot","SeqAnnotEditor",OBJ_SEQANNOT,0,OBJ_SEQANNOT,0,NULL,AnnotAlgEditFunc,PROC_PRIORITY_DEFAULT)
#define REGISTER_NEW_SEQALIGN_VIEW ObjMgrProcLoad(OMPROC_VIEW, "New View SeqAlign","CCSeqAlignViewer",OBJ_SEQALIGN,0,OBJ_SEQALIGN,0,NULL,AlgViewFunc,PROC_PRIORITY_DEFAULT)
extern EditAlignDataPtr EditAlignDataRepopulateFromSeqAlign (PaneL pnl, EditAlignDataPtr adp, SeqAlignPtr salp);
extern void SalsaPanelHasResized (PaneL pnl);
extern Boolean FindIdsInSalsaPanel (PaneL pnl, PoinT pt, Uint2 *entityID, Uint4 *itemID, Uint2 *itemtype);
extern void SaveSalsaPanel (PaneL pnl);
extern PaneL SalsaTextPanel (GrouP g, Int2 wid, Int2 hgt);
extern void PopulateSalsaPanel (PaneL pnl, SeqEntryPtr sep, Boolean all_seq, Uint1 sequence_shown, Uint1 show_feat, Uint1 numbering, FonT font);
extern void repopulate_panel (WindoW w, EditAlignDataPtr adp, SeqAlignPtr salp);
extern Int2 LIBCALLBACK SeqEditFunc PROTO((Pointer data));
extern Int2 LIBCALLBACK AlgEditFunc PROTO((Pointer data));
extern Int2 LIBCALLBACK AnnotAlgEditFunc PROTO((Pointer data));
extern Int2 LIBCALLBACK AlgViewFunc (Pointer data);
extern void OldAlignmentEditor (IteM i);
extern void LaunchAnnotAlignEditor (SeqAnnotPtr sap);
extern void LaunchAlignEditor (SeqAlignPtr salp);
extern void LaunchAlignViewer (SeqAlignPtr salp);
extern void OpenNewAlignmentEditor (SeqAlignPtr salp, Uint2 input_entityID);
extern Int2 LIBCALLBACK LaunchAlignEditorFromDesktop (Pointer data);
extern Int2 LIBCALLBACK LaunchAlignEditorFromDesktop2 (Pointer data);
extern Int2 LIBCALLBACK LaunchAlignEditorFromDesktop3 (Pointer data);
extern Int2 LIBCALLBACK LaunchAlignEditorFromDesktop4 (Pointer data);
extern Int2 LIBCALLBACK UpdateSeqAlign (Pointer data);
/****************************************************
ValidateSeqAlignandACC
validates a SeqAlign using the ValidateSeqAlign function
in api directory, and tests for occurrence of ACC string in sequence ID.
ACC|ACC# will be compared with the corresponding sequence (ACC#)
in the database and replaced by a far pointer if the sequences
are identical.
******************************************************/
NLM_EXTERN Int2 LIBCALLBACK ValidateSeqAlignandACCFromData (Pointer data);
NLM_EXTERN Boolean ValidateSeqAlignandACC (SeqAlignPtr salp, Uint2 entityID,
Boolean message,
Boolean msg_success, Boolean find_remote_bsp,
Boolean find_acc_bsp,
Boolean delete_bsp, Boolean delete_salp, BoolPtr dirty);
NLM_EXTERN Boolean ValidateSeqAlignandACCInSeqEntry (SeqEntryPtr sep,
Boolean message,
Boolean msg_success, Boolean find_remote_bsp,
Boolean find_acc_bsp,
Boolean delete_bsp, Boolean delete_salp);
NLM_EXTERN void CalculateAlignmentOffsets (SeqEntryPtr sepnew, SeqEntryPtr sepold);
NLM_EXTERN Boolean CheckAlignmentSequenceLengths (SeqAlignPtr salp);
NLM_EXTERN Boolean UpdateOneSeqAlignFarPointer (SeqAlignPtr salp, Int4 pos);
extern const char *nucleotide_alphabet;
extern const char *protein_alphabet;
NLM_EXTERN DialoG AlnSettingsDlg (GrouP h, Boolean allow_sequence_type);
NLM_EXTERN TSequenceInfoPtr GetAlignmentOptions (Uint1Ptr moltype, TSequenceInfoPtr sequence_info);
NLM_EXTERN SeqAlignPtr ReadAlignmentForSeqEntry (SeqEntryPtr sep, Boolean is_nuc, Boolean allow_options, Boolean from_clipboard);
NLM_EXTERN void ProduceAlignmentNotes (TAlignmentFilePtr afp, TErrorInfoPtr error_list);
NLM_EXTERN Boolean CorrectAlignmentIDs (TAlignmentFilePtr afp, Uint1 moltype);
#endif
/*****************!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
* for debugging purpose, wdpext is a global SeqEditViewProcsPtr
* printEntityIDForMsg prints the OMUserDataPtr's
extern void printEntityIDForMsg (SeqEditViewFormPtr wdp, CharPtr str);
SeqEditViewFormPtr wdpext;
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
extern void printEntityIDForMsg (SeqEditViewFormPtr wdp, CharPtr str)
{
EditAlignDataPtr adp;
AlignNodePtr anp;
ValNodePtr vnp;
OMUserDataPtr omudp;
Uint2 eID;
SeqEntryPtr sep;
FILE *fp;
if (wdp==NULL) return;
GetPanelExtra (wdp->pnl, &adp);
if ( adp == NULL )
return ;
if ( adp->seqnumber == 0 )
return;
fp = FileOpen("ObjMgr.log", "a");
fprintf (fp, "printEntityID %s\n", str);
for (vnp=adp->anp_list; vnp!=NULL; vnp=vnp->next) {
anp = (AlignNodePtr) vnp->data.ptrvalue;
if (anp!=NULL) {
sep = GetTopSeqEntryForEntityID (anp->seq_entityID);
if (sep!=NULL) {
eID = SeqMgrGetEntityIDForSeqEntry(sep);
omudp = ObjMgrGetUserData (eID, wdp->procid, OMPROC_EDIT, wdp->userkey);
if (omudp != NULL)
{
fprintf(fp, "PRINTENTITYID-OMUDP %d %d %d %d\n", eID, anp->entityID, wdp->input_entityID, anp->seq_entityID);
if (omudp->userdata.ptrvalue == NULL)
fprintf(fp, " OMUDP->userdata.ptrvalue == NULL \n");
else
fprintf(fp, " OMUDP->userdata.ptrvalue NON NULL \n");
if (omudp->messagefunc == NULL)
fprintf(fp, " OMUDP->messagefunc == NULL \n");
else
fprintf(fp, " OMUDP->messagefunc NON NULL \n");
}
else {
if (eID != wdp->input_entityID) {
fprintf(fp, "PRINTENTITYID-OMUDPNULL %d %d %d %d\n", eID, anp->entityID, wdp->input_entityID, anp->seq_entityID);
}
}
}
}
}
FileClose(fp);
}
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!******************/
|