20 #include "PartitionService.h" 22 #include "modules/Module.h" 24 #include "pedigree/kernel/Service.h" 25 #include "pedigree/kernel/ServiceFeatures.h" 26 #include "pedigree/kernel/ServiceManager.h" 27 #include "pedigree/kernel/machine/Device.h" 28 #include "pedigree/kernel/machine/Disk.h" 29 #include "pedigree/kernel/processor/types.h" 30 #include "pedigree/kernel/utilities/String.h" 31 #include "pedigree/kernel/utilities/utility.h" 36 static bool probeDevice(
Disk *pDev)
43 if (appleProbeDisk(pDev))
52 bool hasPartitions =
false;
61 if (!StringCompare(name,
"msdos-partition") ||
62 !StringCompare(name,
"apple-partition"))
70 probeDevice(static_cast<Disk *>(pDev));
85 Disk *pDisk =
static_cast<Disk *
>(pData);
86 return probeDevice(pDisk);
101 String(
"partition"), pService, pFeatures);
119 #if defined(ARM_COMMON) // No ATA controller 120 MODULE_INFO(
"partition", &entry, &exit);
121 #elif defined(HOSTED) 122 MODULE_INFO(
"partition", &entry, &exit,
"diskimage");
124 MODULE_INFO(
"partition", &entry, &exit,
"ata");
Device * getChild(size_t n)
virtual void getName(String &str)
A disk device - a block device in UNIX terms.
void removeService(const String &serviceName)
virtual bool provides(Type service)
bool serve(ServiceFeatures::Type type, void *pData, size_t dataLen)
static void foreach(Callback callback, Device *root=0)
void addService(const String &serviceName, Service *s, ServiceFeatures *feats)
bool msdosProbeDisk(Disk *pDisk)