- Main Page
- Modules
- Data Structures
- Files
- Related Pages

# navigation.h

Go to the documentation of this file.

    00001 /*This file has been prepared for Doxygen automatic documentation generation.*/
    00013 /* Copyright (C) 2006-2008, Atmel Corporation All rights reserved.
    00014  *
    00015  * Redistribution and use in source and binary forms, with or without
    00016  * modification, are permitted provided that the following conditions are met:
    00017  *
    00018  * 1. Redistributions of source code must retain the above copyright notice,
    00019  * this list of conditions and the following disclaimer.
    00020  *
    00021  * 2. Redistributions in binary form must reproduce the above copyright notice,
    00022  * this list of conditions and the following disclaimer in the documentation
    00023  * and/or other materials provided with the distribution.
    00024  *
    00025  * 3. The name of ATMEL may not be used to endorse or promote products derived
    00026  * from this software without specific prior written permission.
    00027  *
    00028  * THIS SOFTWARE IS PROVIDED BY ATMEL ``AS IS'' AND ANY EXPRESS OR IMPLIED
    00029  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    00030  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE EXPRESSLY AND
    00031  * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT,
    00032  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
    00033  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    00034  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
    00035  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    00036  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
    00037  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    00038  */
    00039
    00040 #ifndef _NAVIGATION_H_
    00041 #define _NAVIGATION_H_
    00042
    00043 #include "fs_com.h"
    00044 #include "fat.h"
    00045
    00048 #define  FS_FIND_NEXT      TRUE
    00049 #define  FS_FIND_PREV      FALSE
    00050
    00051
    00052
    00053 //**********************************************************************
    00054 //************************ String format select ************************
    00055
    00063 void  nav_string_unicode( void );
    00064
    00072 void  nav_string_ascii( void );
    00073
    00081 void  nav_string_length_enable( void );
    00082
    00090 void  nav_string_length_disable( void );
    00091
    00092 //**********************************************************************
    00093 //********************** To optimize speed access **********************
    00094
    00102 void  nav_checkdisk_disable( void );
    00103
    00111 void  nav_checkdisk_enable( void );
    00112
    00113
    00114 //**********************************************************************
    00115 //************** Initialise or Stop navigation module ******************
    00116
    00117
    00124 void  nav_reset( void );
    00125
    00132 void  nav_exit( void );
    00133
    00141 Bool  nav_select( U8 u8_idnav );
    00142
    00147 U8    nav_get( void );
    00148
    00160 Bool  nav_copy( U8 u8_idnav );
    00161
    00162
    00163 //**********************************************************************
    00164 //********************* Drive navigation functions *********************
    00165
    00166
    00175 U8    nav_drive_nb( void );
    00176
    00184 Bool  nav_drive_set( U8 u8_number );
    00185
    00191 U8    nav_drive_get( void );
    00192
    00198 U8    nav_drive_getname( void );
    00199
    00216 Bool  nav_drive_format( U8 u8_fat_type );
    00217
    00218
    00219 //**********************************************************************
    00220 //******************* Partition navigation functions *******************
    00221
    00222
    00227 U8    nav_partition_nb( void );
    00228
    00236 Bool  nav_partition_set( U8 partition_number );
    00237
    00249 Bool  nav_partition_mount( void );
    00250
    00256 U8    nav_partition_type( void );
    00257
    00270 Bool  nav_partition_serialnumber( Bool b_action , U8 _MEM_TYPE_SLOW_ *a_u8_sn );
    00271
    00284 Bool  nav_partition_label( Bool b_action , FS_STRING sz_label );
    00285
    00295 U32   nav_partition_space( void );
    00296
    00301 U8    nav_partition_cluster_size( void );
    00302
    00312 U32   nav_partition_freespace( void );
    00313
    00323 U8    nav_partition_freespace_percent( void );
    00324
    00325
    00326 //**********************************************************************
    00327 //****************** File list navigation functions ********************
    00328
    00337 Bool  nav_filelist_single_enable( Bool b_type );
    00338
    00344 Bool  nav_filelist_single_disable( void );
    00345
    00351 Bool  nav_filelist_reset( void );
    00352
    00358 Bool  nav_filelist_validpos( void );
    00359
    00365 Bool  nav_filelist_fileisnotopen( void );
    00366
    00384 Bool  nav_filelist_set( U16 u16_nb , Bool b_direction );
    00385
    00391 U16   nav_filelist_get( void );
    00392
    00400 Bool  nav_filelist_goto( U16 u16_newpos );
    00401
    00415 Bool  nav_filelist_findname( const FS_STRING sz_name , Bool b_match_case );
    00416
    00422 Bool  nav_filelist_eol( void );
    00423
    00429 Bool  nav_filelist_bol( void );
    00430
    00439 Bool  nav_filelist_exist( Bool b_type );
    00440
    00448 U16   nav_filelist_nb( Bool b_type );
    00449
    00458 Bool  nav_filelist_first( Bool b_type );
    00459
    00468 Bool  nav_filelist_last( Bool b_type );
    00469
    00470 //**********************************************************************
    00471 //************************ Index functions *****************************
    00472
    00473
    00483 Fs_index nav_getindex( void );
    00484
    00497 Bool  nav_gotoindex( const Fs_index _MEM_TYPE_SLOW_ *index );
    00498
    00499 //**********************************************************************
    00500 //************************ Directory functions *************************
    00501
    00502
    00508 Bool  nav_dir_root( void );
    00509
    00515 Bool  nav_dir_is_root( void );
    00516
    00527 Bool  nav_dir_cd( void );
    00528
    00539 Bool  nav_dir_gotoparent( void );
    00540
    00549 Bool  nav_dir_name( FS_STRING sz_path  , U8 u8_size_max  );
    00550
    00558 Bool  nav_dir_make( const FS_STRING sz_name  );
    00559
    00569 Bool  nav_getcwd( FS_STRING sz_path  , U8 u8_size_path , Bool b_view_file_select  );
    00570
    00587 Bool  nav_setcwd( FS_STRING sz_path , Bool b_match_case , Bool b_create );
    00588
    00589
    00590 //**********************************************************************
    00591 //*********************** File control functions ***********************
    00592
    00593
    00602 Bool nav_file_getname( FS_STRING sz_name, U8 u8_size_max );
    00603
    00619 Bool  nav_file_name( FS_STRING sz_name , U8 u8_size_max , Bool b_mode , Bool b_match_case  );
    00620
    00625 U32   nav_file_lgt( void );
    00626
    00631 U16   nav_file_lgtsector( void );
    00632
    00638 Bool  nav_file_isreadonly( void );
    00639
    00645 Bool  nav_file_isdir( void );
    00646
    00654 Bool  nav_file_checkext( const FS_STRING sz_filterext );
    00655
    00666 Bool  nav_file_dateget( FS_STRING sz_date , Bool type_date );
    00667
    00672 U8    nav_file_attributget( void );
    00673
    00684 Bool  nav_file_dateset( const FS_STRING sz_date , Bool type_date );
    00685
    00693 Bool  nav_file_attributset( U8 u8_attribut );
    00694
    00704 Bool  nav_file_del( Bool b_only_empty );
    00705
    00713 Bool  nav_file_rename( const FS_STRING sz_name  );
    00714
    00726 Bool  nav_file_create( const FS_STRING sz_name  );
    00727
    00737 Bool  nav_file_copy( void );
    00738
    00750 Bool  nav_file_paste_start( const FS_STRING sz_name  );
    00751
    00761 U8    nav_file_paste_state( Bool b_stop );
    00762
    00763 #endif  // _NAVIGATION_H_