This file is indexed.

/usr/include/ncbi/objcdd.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
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
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
#ifndef _objcdd_ 
#define _objcdd_ 
#ifndef NLM_GENERATED_CODE_PROTO
#define NLM_GENERATED_CODE_PROTO
#endif

#undef NLM_EXTERN
#ifdef NLM_IMPORT
#define NLM_EXTERN NLM_IMPORT
#else
#define NLM_EXTERN extern
#endif


#ifdef __cplusplus
extern "C" { /* } */
#endif


/**************************************************
*
*    Generated objects for Module NCBI-Cdd
*    Generated using ASNCODE Revision: 6.16 at Aug 21, 2008 10:43 AM
*
**************************************************/

NLM_EXTERN Boolean LIBCALL
objcddAsnLoad PROTO((void));
typedef ValNodePtr CddIdPtr;
typedef ValNode CddId;
#define CddId_uid 1
#define CddId_gid 2


NLM_EXTERN CddIdPtr LIBCALL CddIdFree PROTO ((CddIdPtr ));
NLM_EXTERN CddIdPtr LIBCALL CddIdAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddIdAsnWrite PROTO (( CddIdPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddIdSet
*
**************************************************/
typedef ValNode CddIdSet;
typedef ValNodePtr CddIdSetPtr;
#define CddIdSetNew() ValNodeNew(NULL) 

#ifdef NLM_GENERATED_CODE_PROTO

NLM_EXTERN CddIdSetPtr LIBCALL CddIdSetFree PROTO ((CddIdSetPtr ));
NLM_EXTERN CddIdSetPtr LIBCALL CddIdSetNew PROTO (( void ));
NLM_EXTERN CddIdSetPtr LIBCALL CddIdSetAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddIdSetAsnWrite PROTO (( CddIdSetPtr , AsnIoPtr, AsnTypePtr));

#endif /* NLM_GENERATED_CODE_PROTO */



/**************************************************
*
*    Cdd
*
**************************************************/
typedef struct struct_Cdd {
   struct struct_Cdd PNTR next;
   CharPtr   name;
   ValNodePtr   id;
   ValNodePtr   description;
   struct seqannot PNTR   seqannot;
   struct struct_Biostruc_annot_set PNTR   features;
   ValNodePtr   sequences;
   struct seqint PNTR   profile_range;
   struct bioseq PNTR   trunc_master;
   struct struct_Matrix PNTR   posfreq;
   struct struct_Matrix PNTR   scoremat;
   struct struct_Triangle PNTR   distance;
   ValNodePtr   parent;
   ValNodePtr   children;
   ValNodePtr   siblings;
   ValNodePtr   neighbors;
   struct struct_Update_align PNTR   pending;
   struct struct_Reject_id PNTR   rejects;
   ValNodePtr   master3d;
   struct struct_Align_annot PNTR   alignannot;
   struct struct_Cn3d_style_dictionary PNTR   style_dictionary;
   struct struct_Cn3d_user_annotations PNTR   user_annotations;
   struct struct_Domain_parent PNTR   ancestors;
   struct struct_PssmWithParameters PNTR   scoreparams;
   struct struct_Sequence_tree PNTR   seqtree;
} Cdd, PNTR CddPtr;


NLM_EXTERN CddPtr LIBCALL CddFree PROTO ((CddPtr ));
NLM_EXTERN CddPtr LIBCALL CddNew PROTO (( void ));
NLM_EXTERN CddPtr LIBCALL CddAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddAsnWrite PROTO (( CddPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddSet
*
**************************************************/
typedef struct struct_Cdd CddSet;
typedef struct struct_Cdd PNTR CddSetPtr;
#define CddSetNew() CddNew() 

#ifdef NLM_GENERATED_CODE_PROTO

NLM_EXTERN CddSetPtr LIBCALL CddSetFree PROTO ((CddSetPtr ));
NLM_EXTERN CddSetPtr LIBCALL CddSetNew PROTO (( void ));
NLM_EXTERN CddSetPtr LIBCALL CddSetAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddSetAsnWrite PROTO (( CddSetPtr , AsnIoPtr, AsnTypePtr));

#endif /* NLM_GENERATED_CODE_PROTO */



/**************************************************
*
*    CddTree
*
**************************************************/
typedef struct struct_Cdd_tree {
   struct struct_Cdd_tree PNTR next;
   CharPtr   name;
   ValNodePtr   id;
   ValNodePtr   description;
   ValNodePtr   parent;
   ValNodePtr   children;
   ValNodePtr   siblings;
   ValNodePtr   neighbors;
} CddTree, PNTR CddTreePtr;


NLM_EXTERN CddTreePtr LIBCALL CddTreeFree PROTO ((CddTreePtr ));
NLM_EXTERN CddTreePtr LIBCALL CddTreeNew PROTO (( void ));
NLM_EXTERN CddTreePtr LIBCALL CddTreeAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddTreeAsnWrite PROTO (( CddTreePtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddTreeSet
*
**************************************************/
typedef struct struct_Cdd_tree CddTreeSet;
typedef struct struct_Cdd_tree PNTR CddTreeSetPtr;
#define CddTreeSetNew() Cdd_treeNew() 

#ifdef NLM_GENERATED_CODE_PROTO

NLM_EXTERN CddTreeSetPtr LIBCALL CddTreeSetFree PROTO ((CddTreeSetPtr ));
NLM_EXTERN CddTreeSetPtr LIBCALL CddTreeSetNew PROTO (( void ));
NLM_EXTERN CddTreeSetPtr LIBCALL CddTreeSetAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddTreeSetAsnWrite PROTO (( CddTreeSetPtr , AsnIoPtr, AsnTypePtr));

#endif /* NLM_GENERATED_CODE_PROTO */



/**************************************************
*
*    CddPrefNodes
*
**************************************************/
typedef struct struct_Cdd_pref_nodes {
   struct struct_Cdd_org_ref PNTR   preferred_nodes;
   struct struct_Cdd_org_ref PNTR   model_organisms;
   struct struct_Cdd_org_ref PNTR   optional_nodes;
   ValNodePtr   description;
} CddPrefNodes, PNTR CddPrefNodesPtr;


NLM_EXTERN CddPrefNodesPtr LIBCALL CddPrefNodesFree PROTO ((CddPrefNodesPtr ));
NLM_EXTERN CddPrefNodesPtr LIBCALL CddPrefNodesNew PROTO (( void ));
NLM_EXTERN CddPrefNodesPtr LIBCALL CddPrefNodesAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddPrefNodesAsnWrite PROTO (( CddPrefNodesPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddProject
*
**************************************************/
typedef struct struct_Cdd_Project {
   struct struct_Cdd PNTR   cds;
   ValNodePtr   cdcolor;
   struct struct_Cdd_Viewer PNTR   viewers;
   CharPtr   log;
   struct struct_Cdd_Script PNTR   scripts;
} CddProject, PNTR CddProjectPtr;


NLM_EXTERN CddProjectPtr LIBCALL CddProjectFree PROTO ((CddProjectPtr ));
NLM_EXTERN CddProjectPtr LIBCALL CddProjectNew PROTO (( void ));
NLM_EXTERN CddProjectPtr LIBCALL CddProjectAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddProjectAsnWrite PROTO (( CddProjectPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddOrgRef
*
**************************************************/
typedef struct struct_Cdd_org_ref {
   struct struct_Cdd_org_ref PNTR next;
   struct struct_Org_ref PNTR   reference;
   Uint1   active;
   Int4   parent_tax_id;
   CharPtr   rank;
} CddOrgRef, PNTR CddOrgRefPtr;


NLM_EXTERN CddOrgRefPtr LIBCALL CddOrgRefFree PROTO ((CddOrgRefPtr ));
NLM_EXTERN CddOrgRefPtr LIBCALL CddOrgRefNew PROTO (( void ));
NLM_EXTERN CddOrgRefPtr LIBCALL CddOrgRefAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddOrgRefAsnWrite PROTO (( CddOrgRefPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddOrgRefSet
*
**************************************************/
typedef struct struct_Cdd_org_ref CddOrgRefSet;
typedef struct struct_Cdd_org_ref PNTR CddOrgRefSetPtr;
#define CddOrgRefSetNew() Cdd_org_refNew() 

#ifdef NLM_GENERATED_CODE_PROTO

NLM_EXTERN CddOrgRefSetPtr LIBCALL CddOrgRefSetFree PROTO ((CddOrgRefSetPtr ));
NLM_EXTERN CddOrgRefSetPtr LIBCALL CddOrgRefSetNew PROTO (( void ));
NLM_EXTERN CddOrgRefSetPtr LIBCALL CddOrgRefSetAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddOrgRefSetAsnWrite PROTO (( CddOrgRefSetPtr , AsnIoPtr, AsnTypePtr));

#endif /* NLM_GENERATED_CODE_PROTO */

typedef ValNodePtr CddPrefNodeDescrPtr;
typedef ValNode CddPrefNodeDescr;
#define CddPrefNodeDescr_create_date 1
#define CddPrefNodeDescr_description 2


NLM_EXTERN CddPrefNodeDescrPtr LIBCALL CddPrefNodeDescrFree PROTO ((CddPrefNodeDescrPtr ));
NLM_EXTERN CddPrefNodeDescrPtr LIBCALL CddPrefNodeDescrAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddPrefNodeDescrAsnWrite PROTO (( CddPrefNodeDescrPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddPrefNodeDescrSet
*
**************************************************/
typedef ValNode CddPrefNodeDescrSet;
typedef ValNodePtr CddPrefNodeDescrSetPtr;
#define CddPrefNodeDescrSetNew() ValNodeNew(NULL) 

#ifdef NLM_GENERATED_CODE_PROTO

NLM_EXTERN CddPrefNodeDescrSetPtr LIBCALL CddPrefNodeDescrSetFree PROTO ((CddPrefNodeDescrSetPtr ));
NLM_EXTERN CddPrefNodeDescrSetPtr LIBCALL CddPrefNodeDescrSetNew PROTO (( void ));
NLM_EXTERN CddPrefNodeDescrSetPtr LIBCALL CddPrefNodeDescrSetAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddPrefNodeDescrSetAsnWrite PROTO (( CddPrefNodeDescrSetPtr , AsnIoPtr, AsnTypePtr));

#endif /* NLM_GENERATED_CODE_PROTO */



/**************************************************
*
*    GlobalId
*
**************************************************/
typedef struct struct_Global_id {
   CharPtr   accession;
   CharPtr   release;
   Int4   version;
   CharPtr   database;
} GlobalId, PNTR GlobalIdPtr;


NLM_EXTERN GlobalIdPtr LIBCALL GlobalIdFree PROTO ((GlobalIdPtr ));
NLM_EXTERN GlobalIdPtr LIBCALL GlobalIdNew PROTO (( void ));
NLM_EXTERN GlobalIdPtr LIBCALL GlobalIdAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL GlobalIdAsnWrite PROTO (( GlobalIdPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddRepeat
*
**************************************************/
typedef struct struct_Cdd_repeat {
   Int4   count;
   ValNodePtr   location;
   Int4   avglen;
} CddRepeat, PNTR CddRepeatPtr;


NLM_EXTERN CddRepeatPtr LIBCALL CddRepeatFree PROTO ((CddRepeatPtr ));
NLM_EXTERN CddRepeatPtr LIBCALL CddRepeatNew PROTO (( void ));
NLM_EXTERN CddRepeatPtr LIBCALL CddRepeatAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddRepeatAsnWrite PROTO (( CddRepeatPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddBookRef
*
**************************************************/
typedef struct struct_Cdd_book_ref {
   CharPtr   bookname;
   Uint2   textelement;
   /* following #defines are for enumerated type, not used by object loaders */
#define Cdd_book_ref_textelement_unassigned 0
#define Cdd_book_ref_textelement_section 1
#define Cdd_book_ref_textelement_figgrp 2
#define Cdd_book_ref_textelement_table 3
#define Cdd_book_ref_textelement_chapter 4
#define Cdd_book_ref_textelement_biblist 5
#define Cdd_book_ref_textelement_box 6
#define Cdd_book_ref_textelement_glossary 7
#define Cdd_book_ref_textelement_appendix 8
#define Cdd_book_ref_textelement_other 255

   Int4   elementid;
   Int4   subelementid;
   CharPtr   celementid;
   CharPtr   csubelementid;
} CddBookRef, PNTR CddBookRefPtr;


NLM_EXTERN CddBookRefPtr LIBCALL CddBookRefFree PROTO ((CddBookRefPtr ));
NLM_EXTERN CddBookRefPtr LIBCALL CddBookRefNew PROTO (( void ));
NLM_EXTERN CddBookRefPtr LIBCALL CddBookRefAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddBookRefAsnWrite PROTO (( CddBookRefPtr , AsnIoPtr, AsnTypePtr));

typedef ValNodePtr CddDescrPtr;
typedef ValNode CddDescr;
#define CddDescr_othername 1
#define CddDescr_category 2
#define CddDescr_comment 3
#define CddDescr_reference 4
#define CddDescr_create_date 5
#define CddDescr_tax_source 6
#define CddDescr_source 7
#define CddDescr_status 8
#define CddDescr_update_date 9
#define CddDescr_scrapbook 10
#define CddDescr_source_id 11
#define CddDescr_repeats 12
#define CddDescr_old_root 13
#define CddDescr_curation_status 14
#define CddDescr_readonly_status 15
#define CddDescr_book_ref 16
#define CddDescr_attribution 17
#define CddDescr_title 18


NLM_EXTERN CddDescrPtr LIBCALL CddDescrFree PROTO ((CddDescrPtr ));
NLM_EXTERN CddDescrPtr LIBCALL CddDescrAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddDescrAsnWrite PROTO (( CddDescrPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddDescrSet
*
**************************************************/
typedef ValNode CddDescrSet;
typedef ValNodePtr CddDescrSetPtr;
#define CddDescrSetNew() ValNodeNew(NULL) 

#ifdef NLM_GENERATED_CODE_PROTO

NLM_EXTERN CddDescrSetPtr LIBCALL CddDescrSetFree PROTO ((CddDescrSetPtr ));
NLM_EXTERN CddDescrSetPtr LIBCALL CddDescrSetNew PROTO (( void ));
NLM_EXTERN CddDescrSetPtr LIBCALL CddDescrSetAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddDescrSetAsnWrite PROTO (( CddDescrSetPtr , AsnIoPtr, AsnTypePtr));

#endif /* NLM_GENERATED_CODE_PROTO */



/**************************************************
*
*    Matrix
*
**************************************************/
typedef struct struct_Matrix {
   Int4   ncolumns;
   Int4   nrows;
   ValNodePtr   row_labels;
   Int4   scale_factor;
   ValNodePtr   columns;
} Matrix, PNTR MatrixPtr;


NLM_EXTERN MatrixPtr LIBCALL MatrixFree PROTO ((MatrixPtr ));
NLM_EXTERN MatrixPtr LIBCALL MatrixNew PROTO (( void ));
NLM_EXTERN MatrixPtr LIBCALL MatrixAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL MatrixAsnWrite PROTO (( MatrixPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    Triangle
*
**************************************************/
typedef struct struct_Triangle {
   Int4   nelements;
   ScorePtr   scores;
   ValNodePtr   div_ranks;
} Triangle, PNTR TrianglePtr;


NLM_EXTERN TrianglePtr LIBCALL TriangleFree PROTO ((TrianglePtr ));
NLM_EXTERN TrianglePtr LIBCALL TriangleNew PROTO (( void ));
NLM_EXTERN TrianglePtr LIBCALL TriangleAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL TriangleAsnWrite PROTO (( TrianglePtr , AsnIoPtr, AsnTypePtr));

typedef ValNodePtr UpdateCommentPtr;
typedef ValNode UpdateComment;
#define UpdateComment_comment 1
#define UpdateComment_addthis 2
#define UpdateComment_replaces 3
#define UpdateComment_reject_loc 4
#define UpdateComment_reference 5


NLM_EXTERN UpdateCommentPtr LIBCALL UpdateCommentFree PROTO ((UpdateCommentPtr ));
NLM_EXTERN UpdateCommentPtr LIBCALL UpdateCommentAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL UpdateCommentAsnWrite PROTO (( UpdateCommentPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    UpdateAlign
*
**************************************************/
typedef struct struct_Update_align {
   struct struct_Update_align PNTR next;
   ValNodePtr   description;
   struct seqannot PNTR   seqannot;
   Int4   type;
} UpdateAlign, PNTR UpdateAlignPtr;


NLM_EXTERN UpdateAlignPtr LIBCALL UpdateAlignFree PROTO ((UpdateAlignPtr ));
NLM_EXTERN UpdateAlignPtr LIBCALL UpdateAlignNew PROTO (( void ));
NLM_EXTERN UpdateAlignPtr LIBCALL UpdateAlignAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL UpdateAlignAsnWrite PROTO (( UpdateAlignPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    RejectId
*
**************************************************/
typedef struct struct_Reject_id {
   struct struct_Reject_id PNTR next;
   ValNodePtr   description;
   ValNodePtr   ids;
} RejectId, PNTR RejectIdPtr;


NLM_EXTERN RejectIdPtr LIBCALL RejectIdFree PROTO ((RejectIdPtr ));
NLM_EXTERN RejectIdPtr LIBCALL RejectIdNew PROTO (( void ));
NLM_EXTERN RejectIdPtr LIBCALL RejectIdAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL RejectIdAsnWrite PROTO (( RejectIdPtr , AsnIoPtr, AsnTypePtr));

typedef ValNodePtr FeatureEvidencePtr;
typedef ValNode FeatureEvidence;
#define FeatureEvidence_comment 1
#define FeatureEvidence_reference 2
#define FeatureEvidence_bsannot 3
#define FeatureEvidence_seqfeat 4
#define FeatureEvidence_book_ref 5


NLM_EXTERN FeatureEvidencePtr LIBCALL FeatureEvidenceFree PROTO ((FeatureEvidencePtr ));
NLM_EXTERN FeatureEvidencePtr LIBCALL FeatureEvidenceAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL FeatureEvidenceAsnWrite PROTO (( FeatureEvidencePtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    AlignAnnot
*
**************************************************/
typedef struct struct_Align_annot {
   struct struct_Align_annot PNTR next;
   ValNodePtr   location;
   CharPtr   description;
   ValNodePtr   evidence;
   Int4   type;
} AlignAnnot, PNTR AlignAnnotPtr;


NLM_EXTERN AlignAnnotPtr LIBCALL AlignAnnotFree PROTO ((AlignAnnotPtr ));
NLM_EXTERN AlignAnnotPtr LIBCALL AlignAnnotNew PROTO (( void ));
NLM_EXTERN AlignAnnotPtr LIBCALL AlignAnnotAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL AlignAnnotAsnWrite PROTO (( AlignAnnotPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    AlignAnnotSet
*
**************************************************/
typedef struct struct_Align_annot AlignAnnotSet;
typedef struct struct_Align_annot PNTR AlignAnnotSetPtr;
#define AlignAnnotSetNew() AlignAnnotNew() 

#ifdef NLM_GENERATED_CODE_PROTO

NLM_EXTERN AlignAnnotSetPtr LIBCALL AlignAnnotSetFree PROTO ((AlignAnnotSetPtr ));
NLM_EXTERN AlignAnnotSetPtr LIBCALL AlignAnnotSetNew PROTO (( void ));
NLM_EXTERN AlignAnnotSetPtr LIBCALL AlignAnnotSetAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL AlignAnnotSetAsnWrite PROTO (( AlignAnnotSetPtr , AsnIoPtr, AsnTypePtr));

#endif /* NLM_GENERATED_CODE_PROTO */



/**************************************************
*
*    DomainParent
*
**************************************************/
typedef struct struct_Domain_parent {
   struct struct_Domain_parent PNTR next;
   Int4   parent_type;
   ValNodePtr   parentid;
   struct seqannot PNTR   seqannot;
} DomainParent, PNTR DomainParentPtr;


NLM_EXTERN DomainParentPtr LIBCALL DomainParentFree PROTO ((DomainParentPtr ));
NLM_EXTERN DomainParentPtr LIBCALL DomainParentNew PROTO (( void ));
NLM_EXTERN DomainParentPtr LIBCALL DomainParentAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL DomainParentAsnWrite PROTO (( DomainParentPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    SequenceTree
*
**************************************************/
typedef struct struct_Sequence_tree {
   CharPtr   cdAccession;
   struct struct_Algorithm_type PNTR   algorithm;
   Uint1   isAnnotated;
   struct struct_SeqTree_node PNTR   root;
} SequenceTree, PNTR SequenceTreePtr;


NLM_EXTERN SequenceTreePtr LIBCALL SequenceTreeFree PROTO ((SequenceTreePtr ));
NLM_EXTERN SequenceTreePtr LIBCALL SequenceTreeNew PROTO (( void ));
NLM_EXTERN SequenceTreePtr LIBCALL SequenceTreeAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL SequenceTreeAsnWrite PROTO (( SequenceTreePtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    AlgorithmType
*
**************************************************/
typedef struct struct_Algorithm_type {
   Int4   scoring_Scheme;
   Int4   clustering_Method;
   Int4   score_Matrix;
   Int4   gapOpen;
   Int4   gapExtend;
   Int4   gapScaleFactor;
   Int4   nTerminalExt;
   Int4   cTerminalExt;
   Int4   tree_scope;
   Int4   coloring_scope;
} AlgorithmType, PNTR AlgorithmTypePtr;


NLM_EXTERN AlgorithmTypePtr LIBCALL AlgorithmTypeFree PROTO ((AlgorithmTypePtr ));
NLM_EXTERN AlgorithmTypePtr LIBCALL AlgorithmTypeNew PROTO (( void ));
NLM_EXTERN AlgorithmTypePtr LIBCALL AlgorithmTypeAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL AlgorithmTypeAsnWrite PROTO (( AlgorithmTypePtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    SeqTreeNode
*
**************************************************/
typedef struct struct_SeqTree_node {
   struct struct_SeqTree_node PNTR next;
   Uint1   isAnnotated;
   CharPtr   name;
   FloatHi   distance;
   ValNodePtr   Children_children;
   struct struct_Node_annotation PNTR   annotation;
} SeqTreeNode, PNTR SeqTreeNodePtr;


NLM_EXTERN SeqTreeNodePtr LIBCALL SeqTreeNodeFree PROTO ((SeqTreeNodePtr ));
NLM_EXTERN SeqTreeNodePtr LIBCALL SeqTreeNodeNew PROTO (( void ));
NLM_EXTERN SeqTreeNodePtr LIBCALL SeqTreeNodeAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL SeqTreeNodeAsnWrite PROTO (( SeqTreeNodePtr , AsnIoPtr, AsnTypePtr));


#ifdef NLM_GENERATED_CODE_PROTO

typedef ValNodePtr Children_childrenPtr;
typedef ValNode Children_children;

#endif /* NLM_GENERATED_CODE_PROTO */

#define Children_children_children 1
#define Children_children_Children_Footprint 2

#ifdef NLM_GENERATED_CODE_PROTO

static Children_childrenPtr LIBCALL Children_childrenFree PROTO ((Children_childrenPtr ));
static Children_childrenPtr LIBCALL Children_childrenAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
static Boolean LIBCALL Children_childrenAsnWrite PROTO (( Children_childrenPtr , AsnIoPtr, AsnTypePtr));

#endif /* NLM_GENERATED_CODE_PROTO */



/**************************************************
*
*    Children_footprint
*
**************************************************/

#ifdef NLM_GENERATED_CODE_PROTO

typedef struct struct_Children_Footprint {
   struct seqint PNTR   seqRange;
   Int4   rowId;
} Children_footprint, PNTR Children_footprintPtr;
#endif /* NLM_GENERATED_CODE_PROTO */

#ifdef NLM_GENERATED_CODE_PROTO

static Children_footprintPtr LIBCALL Children_footprintFree PROTO ((Children_footprintPtr ));
static Children_footprintPtr LIBCALL Children_footprintNew PROTO (( void ));
static Children_footprintPtr LIBCALL Children_footprintAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
static Boolean LIBCALL Children_footprintAsnWrite PROTO (( Children_footprintPtr , AsnIoPtr, AsnTypePtr));

#endif /* NLM_GENERATED_CODE_PROTO */



/**************************************************
*
*    NodeAnnotation
*
**************************************************/
typedef struct struct_Node_annotation {
   CharPtr   presentInChildCD;
   CharPtr   note;
} NodeAnnotation, PNTR NodeAnnotationPtr;


NLM_EXTERN NodeAnnotationPtr LIBCALL NodeAnnotationFree PROTO ((NodeAnnotationPtr ));
NLM_EXTERN NodeAnnotationPtr LIBCALL NodeAnnotationNew PROTO (( void ));
NLM_EXTERN NodeAnnotationPtr LIBCALL NodeAnnotationAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL NodeAnnotationAsnWrite PROTO (( NodeAnnotationPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddViewerRect
*
**************************************************/
typedef struct struct_Cdd_Viewer_Rect {
   Int4   top;
   Int4   left;
   Int4   width;
   Int4   height;
} CddViewerRect, PNTR CddViewerRectPtr;


NLM_EXTERN CddViewerRectPtr LIBCALL CddViewerRectFree PROTO ((CddViewerRectPtr ));
NLM_EXTERN CddViewerRectPtr LIBCALL CddViewerRectNew PROTO (( void ));
NLM_EXTERN CddViewerRectPtr LIBCALL CddViewerRectAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddViewerRectAsnWrite PROTO (( CddViewerRectPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddViewer
*
**************************************************/
typedef struct struct_Cdd_Viewer {
   struct struct_Cdd_Viewer PNTR next;
   Int4   ctrl;
   struct struct_Cdd_Viewer_Rect PNTR   rect;
   ValNodePtr   accessions;
} CddViewer, PNTR CddViewerPtr;


NLM_EXTERN CddViewerPtr LIBCALL CddViewerFree PROTO ((CddViewerPtr ));
NLM_EXTERN CddViewerPtr LIBCALL CddViewerNew PROTO (( void ));
NLM_EXTERN CddViewerPtr LIBCALL CddViewerAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddViewerAsnWrite PROTO (( CddViewerPtr , AsnIoPtr, AsnTypePtr));



/**************************************************
*
*    CddScript
*
**************************************************/
typedef struct struct_Cdd_Script {
   struct struct_Cdd_Script PNTR next;
   Int4   type;
   CharPtr   name;
   CharPtr   commands;
} CddScript, PNTR CddScriptPtr;


NLM_EXTERN CddScriptPtr LIBCALL CddScriptFree PROTO ((CddScriptPtr ));
NLM_EXTERN CddScriptPtr LIBCALL CddScriptNew PROTO (( void ));
NLM_EXTERN CddScriptPtr LIBCALL CddScriptAsnRead PROTO (( AsnIoPtr, AsnTypePtr));
NLM_EXTERN Boolean LIBCALL CddScriptAsnWrite PROTO (( CddScriptPtr , AsnIoPtr, AsnTypePtr));

#ifdef __cplusplus
/* { */ }
#endif

#endif /* _objcdd_ */

#undef NLM_EXTERN
#ifdef NLM_EXPORT
#define NLM_EXTERN NLM_EXPORT
#else
#define NLM_EXTERN
#endif