// Cost header file for SiC blanket

#ifndef COST_H
#define COST_H


// First Wall
void cost_first_wall_inboard(	Part *Wall, int Year);
void cost_first_wall_outboard(	Part *Wall, int Year);

// Back Wall (DCLL)
void cost_back_wall_inboard(	Part *Wall, int Year);
void cost_back_wall_outboard(	Part *Wall, int Year);

// Blankets
void cost_blanket_inboard(		Part *Blanket, int Year);
void cost_blanket_outboard(		Part *Blanket, int Year);
void cost_blanket_II(			Part *Blanket, int Year);

// Divertor Plates
void cost_divertor(				Part (*Divertor)[6], int Year);

// Heat Transfer Shields
void cost_replaceable_ht_shield(Part (*Shield)[2], 	int Year); // this is really RepHTShield
void cost_ht_shield_sic(		Part (*Shield)[2], 	int Year); // this is really HTShield
void cost_ht_shield_dcll(		Part *Shield, 		int Year); // DCLL
void cost_skeleton_ring(		Part *Ring, 		int Year); // DCLL
void cost_manifold(				Part *Manifold, 	int Year); // DCLL
void cost_manifolding(			Part (*Manifolding)[2], int Year); // SCLL

// Vacuum Vessel
void cost_vacuum_vessel(		Part (*Vessel)[4], int Year);  // SCLL
void cost_vacuum_vessel_dcll(	Part (*Vessel)[4], int Year);  // DCLL

// Magnets and Support
void cost_tf_coil(Part * Magnet, DesignPoint * Machine, int Year);
void cost_tf_coil_conservative(Part * Magnet, DesignPoint * Machine, int Year);
void cost_mpw(Part * Window, int Year);
void cost_pf_coil(Part (*Magnet)[36], int Year);
void cost_bucking_cylinder(Part * BuckingCylinder, int Year);
void cost_upper_cap(Part * UpperCap, int Year);
void cost_lower_cap(Part * LowerCap, int Year);

// Cryogenic Dome
void cost_cryogenic_dome(Part * Cryo, int Year);

// Maintenance Port
void cost_maintenance_port(Part * MaintenancePort, int Year);

// Upper Vacuum Vessel Duct
void cost_upper_vv_duct(Part (*Duct)[3], int Year);

#endif
