mcpat_sys/cacti/
cacti_interface.rs

1use libc::c_double;
2
3#[derive(Clone, Copy, Debug)]
4#[repr(C)]
5pub struct powerComponents;
6
7#[derive(Clone, Copy, Debug)]
8#[repr(C)]
9pub struct powerDef;
10
11extern "C" {
12    pub fn powerComponents_dynamic(this: *mut powerComponents) -> c_double;
13    pub fn powerComponents_leakage(this: *mut powerComponents) -> c_double;
14    pub fn powerComponents_gate_leakage(this: *mut powerComponents) -> c_double;
15    pub fn powerComponents_short_circuit(this: *mut powerComponents) -> c_double;
16    pub fn powerComponents_longer_channel_leakage(this: *mut powerComponents) -> c_double;
17    pub fn powerComponents_power_gated_leakage(this: *mut powerComponents) -> c_double;
18    pub fn powerComponents_power_gated_with_long_channel_leakage(this: *mut powerComponents) -> c_double;
19}
20
21extern "C" {
22    pub fn powerDef_readOp(this: *mut powerDef) -> *mut powerComponents;
23    pub fn powerDef_writeOp(this: *mut powerDef) -> *mut powerComponents;
24    pub fn powerDef_searchOp(this: *mut powerDef) -> *mut powerComponents;
25}