31 lines
		
	
	
		
			662 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			662 B
		
	
	
	
		
			C
		
	
	
	
	
	
/* Copyright (c) 2021-2023 Barcelona Supercomputing Center (BSC)
 | 
						|
 * SPDX-License-Identifier: GPL-3.0-or-later */
 | 
						|
 | 
						|
#ifndef MODEL_CPU_H
 | 
						|
#define MODEL_CPU_H
 | 
						|
 | 
						|
struct model_cpu_spec;
 | 
						|
 | 
						|
#include "emu.h"
 | 
						|
#include "bay.h"
 | 
						|
#include "track.h"
 | 
						|
#include "model.h"
 | 
						|
#include "model_chan.h"
 | 
						|
 | 
						|
struct model_cpu_spec {
 | 
						|
	size_t size;
 | 
						|
	const struct model_chan_spec *chan;
 | 
						|
	const struct model_spec *model;
 | 
						|
};
 | 
						|
 | 
						|
struct model_cpu {
 | 
						|
	const struct model_cpu_spec *spec;
 | 
						|
	struct bay *bay;
 | 
						|
	struct track *track;
 | 
						|
};
 | 
						|
 | 
						|
int model_cpu_create(struct emu *emu, const struct model_cpu_spec *spec);
 | 
						|
int model_cpu_connect(struct emu *emu, const struct model_cpu_spec *spec);
 | 
						|
 | 
						|
#endif /* MODEL_CPU_H */
 |