#![allow(warnings)]
#![feature(integer_atomics)]
#![feature(duration_as_u128)]
extern crate fnv;
extern crate sysinfo;
extern crate netstat2;
extern crate backtrace;
extern crate parking_lot;
extern crate crossbeam_queue;
#[macro_use]
extern crate lazy_static;
#[cfg(all(unix, not(target_os="android")))]
extern crate libc;
#[cfg(all(unix, not(target_os="android")))]
extern crate psutil;
#[cfg(all(unix, not(target_os="android")))]
extern crate walkdir;
extern crate atom;
use std::path::PathBuf;
use std::collections::HashMap;
pub trait SysSpecialStat {
fn sys_cpu_usage(&self) -> Option<f64>;
fn sys_processores_usage(&self) -> Option<Vec<f64>>;
fn sys_cpu_detal(&self) -> Option<(f64, f64, f64, f64, f64, f64, f64, f64, f64, f64)>;
fn sys_processores_detal(&self) -> Option<Vec<(f64, f64, f64, f64, f64, f64, f64, f64, f64, f64)>>;
fn sys_loadavg(&self) -> Option<(f32, f32, f32)>;
fn sys_virtual_memory_detal(&self) -> Option<(u64, u64, u64, u64, u64, u64, u64, u64, u64, f32)>;
fn sys_swap_detal(&self) -> Option<(u64, u64, u64, u64, u64, f32)>;
fn sys_uptime(&self) -> isize;
fn process_current_pid(&self) -> i32;
fn process_detal(&self, _: i32) -> Option<(u32, u32, i64, i64, u32, f64, f64, u64, i64, u64, u64, u64, u64, u64, i32, i64, f64, String, String, String, PathBuf)>;
fn process_env(&self, _: i32) -> Option<HashMap<String, String>>;
fn process_memory(&self, _: i32) -> Option<(u64, u64, u64, u64, u64, u64)>;
fn process_fd_size(&self, _: i32) -> Option<usize>;
fn process_fd(&self, _: i32) -> Option<Vec<(i32, PathBuf)>>;
fn process_threads(&self, _: i32) -> Option<Vec<i32>>;
fn disk_part(&self, _: bool) -> Option<Vec<(String, String, String, String)>>;
fn disk_usage(&self, path: &str) -> Option<(u64, u64, u64, u64, u64, u64, f64)>;
fn disk_io_detal(&self) -> Option<Vec<(String, u64, u64, u64, u64, u64, u64, u64, u64, u64)>>;
fn network_io_detal(&self) -> Option<Vec<(String, u64, u64, u64, u64, u64, u64, u64, u64)>>;
}
pub mod common;
#[cfg(all(unix, not(target_os="android")))]
pub mod linux;
pub mod allocator;
pub mod trace;
pub mod counter;