get_root() get_from_path(char *)
«interface» Filesystem
159.04005306497305
489.4913761627291
MountedFilesytem
56.38849919058573
630.9884605487425
IsoImage
258.8562868808994
766.3563832139356
lstat() read() close() open() readdir()
«interface» SourceFile
481.55979910778467
464.84194569982117
TarFile
176.58261638364775
701.0593878047844
read() size() open() close()
«interface» Stream
779.894860994415
340.36024540554786
FdStream
907.9433913981195
505.6600343909271
FileStream
646.2536512193697
514.5953286599063
TransformStream
774.6238447615127
513.9203093177954
create_file() create_symlink() create_dir()
«interface» TreeNodeBuilder
469.51180397870456
119.92057094444797
TreeNode
777.5164467644091
137.7586776694888
File
776.3272396494064
235.11044131455145
Dir
899.7797731623193
242.40651557378732
Symlink
658.5957352641371
237.4888555445569
«interface» FileBuilder
68.74900622278733
236.29964842955417
«interface» DirBuilder
190.04813195306485
236.2996484295542
«interface» SymlinkBuilder
304.21201499332614
236.29964842955417
POSIX inspired interface to files on different filesystems. open/close act as a opendir/closedir if the file is a dir, I think we don't need different function to open a dir.
154.8805850420814
333.9382491299707
"Sources" for file contents
587.0127806828101
358.755499461917
CutOutStream
845.6997102991108
605.2834046956852
FilterStream
721.2489168102784
605.2834046956852
«interface» Filter
715.5920625607861
705.6925676241749
Used for arbitray streams, not related to filesystem high-level idea. Also used for files like fifos, that can't be added directly as regulat files via de Builder, because its size is unknown. The need to be added as new_files on image
906.5108934811542
328.0975464705584
Create the user-specified TreeNode from the user-specified source. If the source type differs the TreeNode type the use wants to create, it makes the needed conversion, if possible. Each builder implementation can do different conversions.
654.7808793787427
20.610173055266337
Together with the SourceFile encapsulates the access to a given filesystem and abstracts it to a POSIX interface.
20.610173055266422
403.050865276332
The TreeNodeBuilder can be created with the combination of different interfaces for each factory method
149.90663761154804
57.982756057296896
MountedSrc
373.3523804664971
634.9818895055197
TarSrc
479.4183976444791
695.7930726875627
IsoSrc
578.4133470105959
773.574818618083
{{create}}