X *AddUninit()
    {
        for( uiw frame = 0; frame < _o_frames.Size(); ++frame )
        {
            if( _o_frames[ frame ].used < t_frameSize )
            {
                for( uiw index = 0; ; ++index )
                {
                    ASSUME( index < t_frameSize );
                    if( _IsFree( _o_frames[ frame ].p_mem + index ) )
                    {
                        ++_o_frames[ frame ].used;
                        return &_o_frames[ frame ].p_mem[ index ];
                    }
                }
            }
        }

        _o_frames.Resize( _o_frames.Size() + 1 );
        ++_o_frames.Back().used;

        return &_o_frames.Back().p_mem[ 0 ];
    }
 CFramedStore() : _o_frames( t_initialFrames )
 {
     _o_frames.Resize( t_initialFrames );
 }
 void ClearToInitial()
 {
     Clear();
     _o_frames.Resize( t_initialFrames );
 }