#NEWLINE# def _Parse( self ) : #NEWLINE# #INDENT# 'Extracts sections and volumes from the volume system.' #NEWLINE# root_file_entry = self . _file_system . GetRootFileEntry ( ) #NEWLINE# tsk_volume = self . _file_system . GetTSKVolume ( ) #NEWLINE# self . bytes_per_sector = tsk_partition . TSKVolumeGetBytesPerSector ( tsk_volume ) #NEWLINE# for sub_file_entry in root_file_entry . sub_file_entries : #NEWLINE# #INDENT# tsk_vs_part = sub_file_entry . GetTSKVsPart ( ) #NEWLINE# start_sector = tsk_partition . TSKVsPartGetStartSector ( tsk_vs_part ) #NEWLINE# number_of_sectors = tsk_partition . TSKVsPartGetNumberOfSectors ( tsk_vs_part ) #NEWLINE# if ( ( start_sector is None ) or ( number_of_sectors is None ) ) : #NEWLINE# #INDENT# continue #NEWLINE# #UNINDENT# if tsk_partition . TSKVsPartIsAllocated ( tsk_vs_part ) : #NEWLINE# #INDENT# volume = TSKVolume ( sub_file_entry , self . bytes_per_sector ) #NEWLINE# self . _AddVolume ( volume ) #NEWLINE# #UNINDENT# volume_extent = volume_system . VolumeExtent ( ( start_sector * self . bytes_per_sector ) , ( number_of_sectors * self . bytes_per_sector ) ) #NEWLINE# self . _sections . append ( volume_extent )