1 /* 2 * The Sleuth Kit 3 * 4 * Brian Carrier [carrier <at> sleuthkit [dot] org] 5 * Copyright (c) 2019-2020 Brian Carrier. All Rights reserved 6 * Copyright (c) 2018-2019 BlackBag Technologies. All Rights reserved 7 * 8 * This software is distributed under the Common Public License 1.0 9 */ 10 /** \@file C -> C++ compatability layer */ 11 #pragma once 12 13 #include "pool_compat.hpp" 14 #include "tsk_apfs.hpp" 15 16 class APFSPoolCompat : public TSKPoolCompat<APFSPool> { 17 void init_volumes(); 18 19 public: 20 template <typename... Args> APFSPoolCompat(Args &&...args)21 APFSPoolCompat(Args&&... args) 22 : TSKPoolCompat<APFSPool>(TSK_POOL_TYPE_APFS, std::forward<Args>(args)...) { 23 init_volumes(); 24 } 25 26 ~APFSPoolCompat(); 27 28 uint8_t poolstat(FILE* hFile) const noexcept; 29 TSK_IMG_INFO * getImageInfo(const TSK_POOL_INFO *pool_info, TSK_DADDR_T pvol_block) noexcept; 30 }; 31