buildrdswindow(3) builds windowing of a figure

SYNOPSYS

#include "rwinnn.h"
 rdswindow *buildrdswindow( Figure )
    rdsfig_list *Figure;

PARAMETER

Figure
The figure where has to be built the windowing.

DESCRIPTION

The buildrdswindow function permits to build windowing on the figure named 'Figure'.

RETURN VALUE

The pointer to the windowing structure "rdswindow".

ERRORS

"Rds202: rdsalloc error, can't continue !"
it's impossible to allocate the memory size desired

EXAMPLE

        #include "mphnnn.h"
        #include "mutnnn.h"
        #include "rdsnnn.h"
        #include "rfmnnn.h"
        #include "rwinnn.h"
        #include "rtlnnn.h"
        main()
          {
            phfig_list     *MbkFigure;
            rdsfig_list    *RdsFigure;
            rdswindow      *Window;
            long            X,Y,Offset;
            rdswin_list    *Win;
            rdswinrec_list *WinRec;
            rdsrec_list    *ScanRec;
            char            Layer;
            char            Index;
            mbkenv();
            rdsenv();
            loadrdsparam();
            MbkFigure = getphfig("na2_y",'A');
            RdsFigure = figmbkrds(MbkFigure,0,0); 
            Window    =  buildrdswindow ( RdsFigure );
            /* gets each window of the table */
            for ( X = 0 ; X < Window->DX ; X ++ )
             for ( Y = 0 ; Y < Window->DY ; Y ++ ) 
              {
                printf("WINDOW (%ld,%ld)\n",X,Y);              
                Offset = Y * Window->DX + X;
                Win = Window->WINTAB + Offset;
                /* gets all rectangles of a window */
                for ( Layer = 0 ; Layer < RWI_MAX_LAYER ; Layer ++ )               
                 {
                   printf("LAYER = %s\n",RDS_LAYER_NAME[Layer]);
                   for ( WinRec  = Win->LAYERTAB[ Layer ];
                         WinRec != (rdswinrec_list *)NULL;
                         WinRec  = WinRec->NEXT )
                    {
                      for (
                            Index = 0;
                            Index < RWI_MAX_REC;
                            Index++
                          )
                       {
                        ScanRec = WinRec->RECTAB[ Index ];
                        /* prints dimensions of each rectangle */
                        if ( ScanRec != NULL )
                        printf("X=%ld, Y=%ld, DX=%ld, DY=%ld\n",
                               ScanRec->X,ScanRec->Y,ScanRec->DX,
                               ScanRec->DY);
                        else break;
                       }
                    }
                 }
              }
            . . .
          }