pub trait CorticalAreaExt {
Show 39 methods
// Required methods
fn with_properties(self, properties: HashMap<String, Value>) -> Self;
fn add_property(self, key: String, value: Value) -> Self;
fn add_property_mut(&mut self, key: String, value: Value);
fn contains_position(&self, pos: (i32, i32, i32)) -> bool;
fn to_relative_position(
&self,
pos: (i32, i32, i32),
) -> Result<(u32, u32, u32), BduError>;
fn to_absolute_position(
&self,
rel_pos: (u32, u32, u32),
) -> Result<(i32, i32, i32), BduError>;
fn neurons_per_voxel(&self) -> u32;
fn refractory_period(&self) -> u16;
fn snooze_period(&self) -> u16;
fn leak_coefficient(&self) -> f32;
fn firing_threshold(&self) -> f32;
fn firing_threshold_limit(&self) -> f32;
fn get_u32_property(&self, key: &str, default: u32) -> u32;
fn get_u16_property(&self, key: &str, default: u16) -> u16;
fn get_f32_property(&self, key: &str, default: f32) -> f32;
fn get_bool_property(&self, key: &str, default: bool) -> bool;
fn is_input_area(&self) -> bool;
fn is_output_area(&self) -> bool;
fn get_cortical_group(&self) -> Option<String>;
fn visible(&self) -> bool;
fn sub_group(&self) -> Option<String>;
fn plasticity_constant(&self) -> f32;
fn postsynaptic_current(&self) -> f32;
fn psp_uniform_distribution(&self) -> bool;
fn degeneration(&self) -> f32;
fn burst_engine_active(&self) -> bool;
fn firing_threshold_increment(&self) -> f32;
fn firing_threshold_increment_x(&self) -> f32;
fn firing_threshold_increment_y(&self) -> f32;
fn firing_threshold_increment_z(&self) -> f32;
fn consecutive_fire_count(&self) -> u32;
fn leak_variability(&self) -> f32;
fn neuron_excitability(&self) -> f32;
fn postsynaptic_current_max(&self) -> f32;
fn mp_charge_accumulation(&self) -> bool;
fn mp_driven_psp(&self) -> bool;
fn init_lifespan(&self) -> u32;
fn lifespan_growth_rate(&self) -> f32;
fn longterm_mem_threshold(&self) -> u32;
}Expand description
Extension trait providing business logic methods for CorticalArea
Required Methods§
Sourcefn with_properties(self, properties: HashMap<String, Value>) -> Self
fn with_properties(self, properties: HashMap<String, Value>) -> Self
Create a cortical area with custom properties
Sourcefn add_property(self, key: String, value: Value) -> Self
fn add_property(self, key: String, value: Value) -> Self
Add a single property (builder pattern)
Sourcefn add_property_mut(&mut self, key: String, value: Value)
fn add_property_mut(&mut self, key: String, value: Value)
Add a single property in-place
Sourcefn contains_position(&self, pos: (i32, i32, i32)) -> bool
fn contains_position(&self, pos: (i32, i32, i32)) -> bool
Check if a 3D position is within this area’s bounds
Sourcefn to_relative_position(
&self,
pos: (i32, i32, i32),
) -> Result<(u32, u32, u32), BduError>
fn to_relative_position( &self, pos: (i32, i32, i32), ) -> Result<(u32, u32, u32), BduError>
Convert absolute brain position to relative position within this area
Sourcefn to_absolute_position(
&self,
rel_pos: (u32, u32, u32),
) -> Result<(i32, i32, i32), BduError>
fn to_absolute_position( &self, rel_pos: (u32, u32, u32), ) -> Result<(i32, i32, i32), BduError>
Convert relative position within area to absolute brain position
Sourcefn neurons_per_voxel(&self) -> u32
fn neurons_per_voxel(&self) -> u32
Get neurons_per_voxel from properties (defaults to 1)
Sourcefn refractory_period(&self) -> u16
fn refractory_period(&self) -> u16
Get refractory_period from properties (defaults to 0)
Sourcefn snooze_period(&self) -> u16
fn snooze_period(&self) -> u16
Get snooze_period from properties (defaults to 0)
Sourcefn leak_coefficient(&self) -> f32
fn leak_coefficient(&self) -> f32
Get leak_coefficient from properties (defaults to 0.0)
Sourcefn firing_threshold(&self) -> f32
fn firing_threshold(&self) -> f32
Get firing_threshold from properties (defaults to 1.0)
Sourcefn firing_threshold_limit(&self) -> f32
fn firing_threshold_limit(&self) -> f32
Get firing_threshold_limit from properties (defaults to 0.0 = no limit)
Sourcefn get_u32_property(&self, key: &str, default: u32) -> u32
fn get_u32_property(&self, key: &str, default: u32) -> u32
Get property as u32 with default
Sourcefn get_u16_property(&self, key: &str, default: u16) -> u16
fn get_u16_property(&self, key: &str, default: u16) -> u16
Get property as u16 with default
Sourcefn get_f32_property(&self, key: &str, default: f32) -> f32
fn get_f32_property(&self, key: &str, default: f32) -> f32
Get property as f32 with default
Sourcefn get_bool_property(&self, key: &str, default: bool) -> bool
fn get_bool_property(&self, key: &str, default: bool) -> bool
Get property as bool with default
Sourcefn is_input_area(&self) -> bool
fn is_input_area(&self) -> bool
Check if this is an input area
Sourcefn is_output_area(&self) -> bool
fn is_output_area(&self) -> bool
Check if this is an output area
Sourcefn get_cortical_group(&self) -> Option<String>
fn get_cortical_group(&self) -> Option<String>
Get cortical group classification
Sourcefn plasticity_constant(&self) -> f32
fn plasticity_constant(&self) -> f32
Get plasticity_constant from properties
Sourcefn postsynaptic_current(&self) -> f32
fn postsynaptic_current(&self) -> f32
Get postsynaptic_current from properties
Sourcefn psp_uniform_distribution(&self) -> bool
fn psp_uniform_distribution(&self) -> bool
Get psp_uniform_distribution from properties
Sourcefn degeneration(&self) -> f32
fn degeneration(&self) -> f32
Get degeneration from properties
Sourcefn burst_engine_active(&self) -> bool
fn burst_engine_active(&self) -> bool
Get burst_engine_active from properties
Sourcefn firing_threshold_increment(&self) -> f32
fn firing_threshold_increment(&self) -> f32
Get firing_threshold_increment from properties
Sourcefn firing_threshold_increment_x(&self) -> f32
fn firing_threshold_increment_x(&self) -> f32
Get firing_threshold_increment_x from properties
Sourcefn firing_threshold_increment_y(&self) -> f32
fn firing_threshold_increment_y(&self) -> f32
Get firing_threshold_increment_y from properties
Sourcefn firing_threshold_increment_z(&self) -> f32
fn firing_threshold_increment_z(&self) -> f32
Get firing_threshold_increment_z from properties
Sourcefn consecutive_fire_count(&self) -> u32
fn consecutive_fire_count(&self) -> u32
Get consecutive_fire_count from properties
Sourcefn leak_variability(&self) -> f32
fn leak_variability(&self) -> f32
Get leak_variability from properties
Sourcefn neuron_excitability(&self) -> f32
fn neuron_excitability(&self) -> f32
Get neuron_excitability from properties
Sourcefn postsynaptic_current_max(&self) -> f32
fn postsynaptic_current_max(&self) -> f32
Get postsynaptic_current_max from properties
Sourcefn mp_charge_accumulation(&self) -> bool
fn mp_charge_accumulation(&self) -> bool
Get mp_charge_accumulation from properties
Sourcefn mp_driven_psp(&self) -> bool
fn mp_driven_psp(&self) -> bool
Get mp_driven_psp from properties
Sourcefn init_lifespan(&self) -> u32
fn init_lifespan(&self) -> u32
Get init_lifespan from properties (memory parameter)
Sourcefn lifespan_growth_rate(&self) -> f32
fn lifespan_growth_rate(&self) -> f32
Get lifespan_growth_rate from properties (memory parameter)
Sourcefn longterm_mem_threshold(&self) -> u32
fn longterm_mem_threshold(&self) -> u32
Get longterm_mem_threshold from properties (memory parameter)
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.