2014-07-12 21:59:58 -04:00
|
|
|
#pragma once
|
2006-06-15 04:19:30 +00:00
|
|
|
|
2015-05-17 22:10:33 -04:00
|
|
|
#include "BlockProvider.h"
|
2006-06-15 04:19:30 +00:00
|
|
|
#include "PathTableRecord.h"
|
|
|
|
#include "Types.h"
|
2008-03-17 19:20:37 +00:00
|
|
|
#include <map>
|
2006-06-15 04:19:30 +00:00
|
|
|
|
|
|
|
namespace ISO9660
|
|
|
|
{
|
|
|
|
|
|
|
|
class CPathTable
|
|
|
|
{
|
|
|
|
public:
|
2018-04-30 21:01:23 +01:00
|
|
|
CPathTable(CBlockProvider*, uint32);
|
|
|
|
~CPathTable();
|
2006-06-15 04:19:30 +00:00
|
|
|
|
2018-04-30 21:01:23 +01:00
|
|
|
unsigned int FindRoot() const;
|
|
|
|
unsigned int FindDirectory(const char*, unsigned int) const;
|
|
|
|
uint32 GetDirectoryAddress(unsigned int) const;
|
2006-06-15 04:19:30 +00:00
|
|
|
|
|
|
|
private:
|
2014-07-12 21:59:58 -04:00
|
|
|
typedef std::map<size_t, CPathTableRecord> RecordMapType;
|
2006-06-15 04:19:30 +00:00
|
|
|
|
2018-04-30 21:01:23 +01:00
|
|
|
RecordMapType m_records;
|
2006-06-15 04:19:30 +00:00
|
|
|
};
|
|
|
|
}
|