- Refactored entire codebase (excluding the Insight component) to accommodate multiple target architectures (no longer specific to AVR) - Deleted 'generate SVD' GDB monitor command - I will eventually move this functionality to the Bloom website - Added unit size property to address spaces - Many other changes which I couldn't be bothered to describe here
47 lines
1.1 KiB
C++
47 lines
1.1 KiB
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
#include "TargetPinDescriptor.hpp"
|
|
|
|
namespace Targets
|
|
{
|
|
enum class TargetPinoutType: std::uint8_t
|
|
{
|
|
SOIC,
|
|
SSOP,
|
|
DIP,
|
|
QFN,
|
|
QFP,
|
|
DUAL_ROW_QFN,
|
|
MLF,
|
|
BGA,
|
|
};
|
|
|
|
struct TargetPinoutDescriptor
|
|
{
|
|
public:
|
|
std::string key;
|
|
std::string name;
|
|
TargetPinoutType type;
|
|
std::vector<TargetPinDescriptor> pinDescriptors;
|
|
|
|
TargetPinoutDescriptor(
|
|
const std::string& key,
|
|
const std::string& name,
|
|
TargetPinoutType type,
|
|
std::vector<TargetPinDescriptor>&& pinDescriptors
|
|
);
|
|
|
|
TargetPinoutDescriptor(const TargetPinoutDescriptor& other) = delete;
|
|
TargetPinoutDescriptor& operator = (const TargetPinoutDescriptor& other) = delete;
|
|
|
|
TargetPinoutDescriptor(TargetPinoutDescriptor&& other) noexcept = default;
|
|
TargetPinoutDescriptor& operator = (TargetPinoutDescriptor&& other) = default;
|
|
|
|
bool operator == (const TargetPinoutDescriptor& other) const;
|
|
};
|
|
}
|