#pragma once
#include <cstddef>
#include <map>
#include <string>
#include <vector>
#include "cmCTestResourceAllocator.h"
struct cmCTestBinPackerAllocation
{
std::size_t ProcessIndex;
int SlotsNeeded;
std::string Id;
bool operator==(cmCTestBinPackerAllocation const& other) const;
bool operator!=(cmCTestBinPackerAllocation const& other) const;
};
bool cmAllocateCTestResourcesRoundRobin(
std::map<std::string, cmCTestResourceAllocator::Resource> const& resources,
std::vector<cmCTestBinPackerAllocation>& allocations);
bool cmAllocateCTestResourcesBlock(
std::map<std::string, cmCTestResourceAllocator::Resource> const& resources,
std::vector<cmCTestBinPackerAllocation>& allocations);