ATMEL: navigation.h Source File

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

# navigation.h

Go to the documentation of this file.

    00001 /*This file is 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  * 4. This software may only be redistributed and used in connection with an Atmel
    00029  * AVR product.
    00030  *
    00031  * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
    00032  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    00033  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE EXPRESSLY AND
    00034  * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT,
    00035  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
    00036  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    00037  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
    00038  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    00039  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
    00040  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    00041  */
    00042
    00043 #ifndef _NAVIGATION_H_
    00044 #define _NAVIGATION_H_
    00045
    00046 #include "fs_com.h"
    00047 #include "fat.h"
    00048
    00051 #define  FS_FIND_NEXT      TRUE
    00052 #define  FS_FIND_PREV      FALSE
    00053
    00054
    00055
    00056 //**********************************************************************
    00057 //************************ String format select ************************
    00058
    00066 void  nav_string_unicode( void );
    00067
    00075 void  nav_string_ascii( void );
    00076
    00084 void  nav_string_length_enable( void );
    00085
    00093 void  nav_string_length_disable( void );
    00094
    00095 //**********************************************************************
    00096 //********************** To optimize speed access **********************
    00097
    00105 void  nav_checkdisk_disable( void );
    00106
    00114 void  nav_checkdisk_enable( void );
    00115
    00116
    00117 //**********************************************************************
    00118 //************** Initialise or Stop navigation module ******************
    00119
    00120
    00127 void  nav_reset( void );
    00128
    00135 void  nav_exit( void );
    00136
    00144 Bool  nav_select( U8 u8_idnav );
    00145
    00150 U8    nav_get( void );
    00151
    00163 Bool  nav_copy( U8 u8_idnav );
    00164
    00165
    00166 //**********************************************************************
    00167 //********************* Drive navigation functions *********************
    00168
    00169
    00178 U8    nav_drive_nb( void );
    00179
    00187 Bool  nav_drive_set( U8 u8_number );
    00188
    00194 U8    nav_drive_get( void );
    00195
    00201 U8    nav_drive_getname( void );
    00202
    00219 Bool  nav_drive_format( U8 u8_fat_type );
    00220
    00221
    00222 //**********************************************************************
    00223 //******************* Partition navigation functions *******************
    00224
    00225
    00230 U8    nav_partition_nb( void );
    00231
    00239 Bool  nav_partition_set( U8 partition_number );
    00240
    00252 Bool  nav_partition_mount( void );
    00253
    00259 U8    nav_partition_type( void );
    00260
    00273 Bool  nav_partition_serialnumber( Bool b_action , U8 _MEM_TYPE_SLOW_ *a_u8_sn );
    00274
    00287 Bool  nav_partition_label( Bool b_action , FS_STRING sz_label );
    00288
    00298 U32   nav_partition_space( void );
    00299
    00304 U8    nav_partition_cluster_size( void );
    00305
    00315 U32   nav_partition_freespace( void );
    00316
    00326 U8    nav_partition_freespace_percent( void );
    00327
    00328
    00329 //**********************************************************************
    00330 //****************** File list navigation functions ********************
    00331
    00340 Bool  nav_filelist_single_enable( Bool b_type );
    00341
    00347 Bool  nav_filelist_single_disable( void );
    00348
    00354 Bool  nav_filelist_reset( void );
    00355
    00361 Bool  nav_filelist_validpos( void );
    00362
    00368 Bool  nav_filelist_fileisnotopen( void );
    00369
    00387 Bool  nav_filelist_set( U16 u16_nb , Bool b_direction );
    00388
    00394 U16   nav_filelist_get( void );
    00395
    00403 Bool  nav_filelist_goto( U16 u16_newpos );
    00404
    00418 Bool  nav_filelist_findname( const FS_STRING sz_name , Bool b_match_case );
    00419
    00425 Bool  nav_filelist_eol( void );
    00426
    00432 Bool  nav_filelist_bol( void );
    00433
    00442 Bool  nav_filelist_exist( Bool b_type );
    00443
    00451 U16   nav_filelist_nb( Bool b_type );
    00452
    00461 Bool  nav_filelist_first( Bool b_type );
    00462
    00471 Bool  nav_filelist_last( Bool b_type );
    00472
    00473 //**********************************************************************
    00474 //************************ Index functions *****************************
    00475
    00476
    00486 Fs_index nav_getindex( void );
    00487
    00500 Bool  nav_gotoindex( const Fs_index _MEM_TYPE_SLOW_ *index );
    00501
    00502 //**********************************************************************
    00503 //************************ Directory functions *************************
    00504
    00505
    00511 Bool  nav_dir_root( void );
    00512
    00518 Bool  nav_dir_is_root( void );
    00519
    00530 Bool  nav_dir_cd( void );
    00531
    00542 Bool  nav_dir_gotoparent( void );
    00543
    00552 Bool  nav_dir_name( FS_STRING sz_path  , U8 u8_size_max  );
    00553
    00561 Bool  nav_dir_make( const FS_STRING sz_name  );
    00562
    00572 Bool  nav_getcwd( FS_STRING sz_path  , U8 u8_size_path , Bool b_view_file_select  );
    00573
    00590 Bool  nav_setcwd( FS_STRING sz_path , Bool b_match_case , Bool b_create );
    00591
    00592
    00593 //**********************************************************************
    00594 //*********************** File control functions ***********************
    00595
    00596
    00605 Bool nav_file_getname( FS_STRING sz_name, U8 u8_size_max );
    00606
    00622 Bool  nav_file_name( FS_STRING sz_name , U8 u8_size_max , Bool b_mode , Bool b_match_case  );
    00623
    00628 U32   nav_file_lgt( void );
    00629
    00634 U16   nav_file_lgtsector( void );
    00635
    00641 Bool  nav_file_isreadonly( void );
    00642
    00648 Bool  nav_file_isdir( void );
    00649
    00657 Bool  nav_file_checkext( const FS_STRING sz_filterext );
    00658
    00669 Bool  nav_file_dateget( FS_STRING sz_date , Bool type_date );
    00670
    00675 U8    nav_file_attributget( void );
    00676
    00687 Bool  nav_file_dateset( const FS_STRING sz_date , Bool type_date );
    00688
    00696 Bool  nav_file_attributset( U8 u8_attribut );
    00697
    00707 Bool  nav_file_del( Bool b_only_empty );
    00708
    00716 Bool  nav_file_rename( const FS_STRING sz_name  );
    00717
    00729 Bool  nav_file_create( const FS_STRING sz_name  );
    00730
    00740 Bool  nav_file_copy( void );
    00741
    00753 Bool  nav_file_paste_start( const FS_STRING sz_name  );
    00754
    00764 U8    nav_file_paste_state( Bool b_stop );
    00765
    00766 #endif  // _NAVIGATION_H_