pub struct Brain { /* private fields */ }
Implementations§
Source§impl Brain
impl Brain
pub fn new() -> Self
pub fn duplicate(&self) -> Self
pub fn merge(&self, other: &Self) -> Self
pub fn id(&self) -> BrainID
pub fn get_neurons(&self) -> Vec<NeuronID> ⓘ
pub fn get_sensors(&self) -> Vec<SensorID> ⓘ
pub fn get_effectors(&self) -> Vec<EffectorID> ⓘ
pub fn synapses_count(&self) -> usize
pub fn get_impulses_count(&self) -> usize
pub fn get_impulses_potential(&self) -> Scalar
pub fn get_neurons_potential(&self) -> Scalar
pub fn get_potential(&self) -> Scalar
pub fn clear(&mut self)
pub fn config(&self) -> &Config
pub fn config_mut(&mut self) -> &mut Config
pub fn set_config(&mut self, config: Config)
pub fn neuron(&self, id: NeuronID) -> Option<&Neuron>
pub fn neuron_mut(&mut self, id: NeuronID) -> Option<&mut Neuron>
pub fn neurons(&self) -> &[Neuron]
pub fn are_neurons_connected(&self, from: NeuronID, to: NeuronID) -> bool
pub fn does_neuron_has_connections(&self, id: NeuronID) -> bool
pub fn get_neuron_connections_count(&self, id: NeuronID) -> (usize, usize)
pub fn get_neuron_connections( &self, id: NeuronID, ) -> (Vec<NeuronID>, Vec<NeuronID>)
pub fn create_sensor(&mut self, target: NeuronID) -> Result<SensorID>
pub fn kill_sensor(&mut self, id: SensorID) -> Result<()>
pub fn sensor_trigger_impulse( &mut self, id: SensorID, potential: Scalar, ) -> Result<()>
pub fn create_effector(&mut self, source: NeuronID) -> Result<EffectorID>
pub fn kill_effector(&mut self, id: EffectorID) -> Result<()>
pub fn effector_potential_release(&mut self, id: EffectorID) -> Result<Scalar>
pub fn create_neuron(&mut self, position: Position) -> NeuronID
pub fn kill_neuron(&mut self, id: NeuronID) -> Result<()>
pub fn bind_neurons( &mut self, from: NeuronID, to: NeuronID, ) -> Result<Option<Scalar>>
pub fn unbind_neurons(&mut self, from: NeuronID, to: NeuronID) -> Result<bool>
pub fn kill_impulses(&mut self)
pub fn process(&mut self, delta_time: Scalar) -> Result<()>
pub fn build_activity_map_default(&self) -> BrainActivityMap
pub fn build_activity_map(&self, flags: usize) -> BrainActivityMap
pub fn build_activity_stats(&self) -> BrainActivityStats
pub fn ignite_random_synapses(&mut self, count: usize, potential: Range<Scalar>)
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Brain
impl<'de> Deserialize<'de> for Brain
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Brain
Auto Trait Implementations§
impl Freeze for Brain
impl RefUnwindSafe for Brain
impl Send for Brain
impl Sync for Brain
impl Unpin for Brain
impl UnwindSafe for Brain
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more