ample/Ample/Media.h

57 lines
1.0 KiB
C
Raw Normal View History

//
// Media.h
// Ample
//
// Created by Kelvin Sherlock on 3/7/2021.
// Copyright © 2021 Kelvin Sherlock. All rights reserved.
//
#ifndef Media_h
#define Media_h
typedef struct Media {
unsigned cass;
unsigned cdrom;
unsigned hard;
unsigned floppy_8;
unsigned floppy_5_25;
unsigned floppy_3_5;
unsigned pseudo_disk;
unsigned bitbanger;
2021-07-11 03:33:20 +00:00
unsigned midiin;
unsigned midiout;
unsigned picture;
unsigned rom;
uint64_t floppy_mask_8;
uint64_t floppy_mask_5_25;
uint64_t floppy_mask_3_5;
} Media;
2021-07-09 02:09:33 +00:00
typedef enum {
MediaTypeError = -1,
2021-07-09 02:09:33 +00:00
MediaTypeUnknown = 0,
MediaType_8,
2021-07-09 02:09:33 +00:00
MediaType_5_25,
MediaType_3_5,
MediaType_HardDisk,
MediaType_CDROM,
2021-07-09 02:09:33 +00:00
MediaType_Cassette,
MediaType_Picture,
MediaType_MIDI,
MediaType_ROM,
2021-07-09 02:09:33 +00:00
} MediaType;
struct Media MediaFromDictionary(NSDictionary *);
void MediaAdd(Media *dest, const Media *src);
BOOL MediaEqual(const Media *lhs, const Media *rhs);
extern const Media EmptyMedia;
MediaType ClassifyMediaFile(id file);
2021-07-09 02:09:33 +00:00
#endif /* Media_h */