/* file dintal4_prot.c */

#if !defined(COMPILE_ENVIRONMENT)
#include <gp/stdcenvf.h> /* std compile environment for functions */
#endif

 void dump_int_alignment4_prot(ALIGNMENT_INT_PROT *paln)
/************************************************************/
/*  dumps *paln.                                            */
/* This style has  slots arrrayed vertically.               */
/************************************************************/
 {char proc[] = "dump_int_alignment4_prot";
  PROTECTED_CHR_STR psxx, *psx = &psxx;
  int i, nslots;
  pcodeset *pcode;
db_enter_msg(proc,4); /* debug only */
  alloc_prot_chr_str_guts(psx,133);
  fprintf(stdout,"\n");
  fprintf(stdout," VERTICAL DUMP OF ALIGNMENT '%s':\n",paln->id->str);
  pcode  = paln->pcset;
  fprintf(stdout," pcodeset = '%s'\n",pcode->name);
  if (!paln->aligned) fprintf(stdout," Sequences not aligned, cannot dump.\n");
  else
    {fprintf(stdout," paln->naux = %d\n",paln->naux);
     if (paln->naux > 0) fprintf(stdout,
        " paln->pcset->pcdtab_length=aux offset=%d\n",paln->pcset->pctab_length);
     fprintf(stdout,"  I NSA[I]->STR(SPELLING)      |  NSB[I]->STR(SPELLING) \n");
     nslots = paln->nsb->str[0];
     for (i=1; i <=  nslots; i++)
       {fprintf(stdout,"%3d %6d (",i,paln->nsa->str[i]);
        if (paln->nsa->str[i] > paln->pcset->pctab_length) fprintf(stdout,"{");
        fprintf(stdout,"%12s)",ascii_stri_prot(psx,paln->nsa->str[i],pcode,paln));
        if (paln->nsa->str[i] > paln->pcset->pctab_length) fprintf(stdout,"}");
        fprintf(stdout,"  |  %6d (",paln->nsb->str[i]);
        if (paln->nsb->str[i] > paln->pcset->pctab_length) fprintf(stdout,"{");
        fprintf(stdout,"%12s",ascii_stri_prot(psx,paln->nsb->str[i],pcode,paln));
        if (paln->nsb->str[i] > paln->pcset->pctab_length) fprintf(stdout,"}");
        fprintf(stdout,")\n");
       }
     fprintf(stdout,"\n");
    }
  dealloc_prot_chr_str_guts(psx);
db_leave_msg(proc,4); /* debug only */
  return;
 } /* end dump_int_alignment4 */
 /* end file dintal4.c */
