LLFIO  v2.00
llfio_v2_xxx::algorithm::comparison_summary::_lr Struct Reference
Inheritance diagram for llfio_v2_xxx::algorithm::comparison_summary::_lr:
llfio_v2_xxx::algorithm::traversal_summary

Public Types

enum  difference_type : uint8_t {
  entry , entry_kind , content_metadata , noncontent_metadata ,
  content , none
}
 The kind of difference. More...
 
template<class T >
using map_type = std::unordered_map< T, size_t >
 

Public Member Functions

traversal_summaryoperator+= (const traversal_summary &o)
 Adds another summary to this.
 

Static Public Member Functions

static constexpr stat_t::want default_metadata ()
 The default metadata summarised.
 

Public Attributes

traversal_summary::map_type< difference_typedifferences
 The number of items with the given difference.
 
spinlock _lock
 
size_t stats_failed {0}
 The number of handle stat's which failed.
 
size_t directory_opens_failed {0}
 The number of directories which could not be opened.
 
stat_t::want want {stat_t::want::none}
 The summary items desired.
 
map_type< uint64_t > devs
 The number of items with the given device id.
 
map_type< filesystem::file_type > types
 The number of items with the given type.
 
handle::extent_type size {0}
 The sum of maximum extents. On Windows, is for file content only.
 
handle::extent_type allocated {0}
 The sum of allocated extents. On Windows, is for file content only.
 
handle::extent_type file_blocks {0}
 The sum of file allocated blocks.
 
handle::extent_type directory_blocks {0}
 The sum of directory allocated blocks.
 
size_t max_depth {0}
 The maximum depth of the hierarchy.
 

Member Enumeration Documentation

◆ difference_type

The kind of difference.

Enumerator
entry 

Entry name is here but not there.

entry_kind 

Same entry name has different kind e.g. file vs directory.

content_metadata 

Maximum extent or modified timestamp metadata is different.

noncontent_metadata 

Non-content metadata (perms, non-modified timestamps etc) is different.

content 

The content is different (if contents comparison enabled)

none 

There is no difference.

42  {
43  entry, //!< Entry name is here but not there
44  entry_kind, //!< Same entry name has different kind e.g. file vs directory
45  content_metadata, //!< Maximum extent or modified timestamp metadata is different
46  noncontent_metadata, //!< Non-content metadata (perms, non-modified timestamps etc) is different
47  content, //!< The content is different (if contents comparison enabled)
48  none, //!< There is no difference
49  };
@ entry
Entry name is here but not there.
Definition: difference.hpp:43
@ content_metadata
Maximum extent or modified timestamp metadata is different.
Definition: difference.hpp:45
@ none
There is no difference.
Definition: difference.hpp:48
@ entry_kind
Same entry name has different kind e.g. file vs directory.
Definition: difference.hpp:44
@ content
The content is different (if contents comparison enabled)
Definition: difference.hpp:47
@ noncontent_metadata
Non-content metadata (perms, non-modified timestamps etc) is different.
Definition: difference.hpp:46

The documentation for this struct was generated from the following file: