libbio
Loading...
Searching...
No Matches
Dendrite.h
Go to the documentation of this file.
1/*
2 * This file is a part of the Biology project by eons LLC.
3 * Biology (aka Develop Biology) is a framework for approaching software
4 * development from a natural sciences perspective.
5 *
6 * Copyright (C) 2023 Séon O'Shannon & eons LLC
7 *
8 * This program is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU Affero General Public License as
10 * published by the Free Software Foundation, either version 3 of the
11 * License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU Affero General Public License for more details.
17 *
18 * You should have received a copy of the GNU Affero General Public License
19 * along with this program. If not, see <https://www.gnu.org/licenses/>.
20 */
21
22#pragma once
23
24#include "Neurite.h"
26
27namespace bio {
28namespace neural {
29
31 public neural::Class< Dendrite >,
32 virtual public Neurite
33{
34public:
35
40
42 neural,
44 filter::Neural()
45 )
46
58 void CommonConstructor();
59
64
70
76
85
92
101
110
117
124
130
135
141 virtual void ReReady();
142
147
152
157
162
167
170
171 Pointer< molecular::Protein > mcPrepareForPotentiation;
172 Pointer< molecular::Protein > mcProcessPotentiation;
173 Pointer< molecular::Protein > mcPostPotentiation;
174
175 Pointer< molecular::Protein > mcPrepareForDepotentiation;
176 Pointer< molecular::Protein > mcProcessDepotentiation;
177 Pointer< molecular::Protein > mcPostDepotentiation;
178
179 Pointer< molecular::Protein > mcReReady;
180
183
188
189
193 virtual void NoLongerReady();
194
195public:
196
200 virtual void Potentiated();
201
205 virtual void Depotentiated();
206
207};
208
209} // neural namespace
210} // bio namespace
#define BIO_DISAMBIGUATE_ALL_CLASS_METHODS(ns, caller)
Definition ClassMethodMacros.h:112
#define BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS_WITH_COMMON_CONSTRUCTOR(ns, class,...)
Definition chemical/macro/ConstructorMacros.h:65
Definition Pointer.h:115
Definition String.h:55
void CommonConstructor()
Definition Expressor.cpp:40
Definition neural/common/Class.h:42
Definition Dendrite.h:33
Pointer< molecular::Protein > mcPostDepotentiation
Definition Dendrite.h:177
virtual bool ShouldBePotentiated() const
Definition Dendrite.cpp:92
Timestamp mLastPotentiated
Definition Dendrite.h:182
Pointer< molecular::Protein > mcPrepareForDepotentiation
Definition Dendrite.h:175
Id GetPostsynapticId() const
Definition Dendrite.cpp:263
virtual Code CacheProteins()
Definition Dendrite.cpp:62
virtual Code PostPotentiation()
Definition Dendrite.cpp:223
virtual void NoLongerReady()
Definition Dendrite.cpp:241
virtual Code ProcessDepotentiation()
Definition Dendrite.cpp:214
Pointer< molecular::Protein > mcProcessDepotentiation
Definition Dendrite.h:176
Pointer< molecular::Protein > mcProcessPotentiation
Definition Dendrite.h:172
Pointer< molecular::Protein > mcPostPotentiation
Definition Dendrite.h:173
virtual Timestamp PrepareForPotentiation(Timestamp whenToPotentiate)
Definition Dendrite.cpp:175
virtual Code PostDepotentiation()
Definition Dendrite.cpp:232
Name GetPostsynapticName() const
Definition Dendrite.cpp:257
virtual Code ProcessPotentiation()
Definition Dendrite.cpp:200
Pointer< Neuron > GetPostsynapticNeuron()
Definition Dendrite.cpp:247
virtual void Depotentiated()
Definition Dendrite.cpp:159
virtual Timestamp GetTimeToAdd() const
Definition Dendrite.cpp:195
virtual void PrepareForDepotentiation()
Definition Dendrite.cpp:185
Timestamp mPotentiateAt
Definition Dendrite.h:181
Pointer< molecular::Protein > mcReReady
Definition Dendrite.h:179
virtual void ReReady()
Definition Dendrite.cpp:190
virtual void Potentiated()
Definition Dendrite.cpp:140
Pointer< Neuron > mPostsynapticNeuron
Definition Dendrite.h:169
virtual bool ShouldBeDepotentiated() const
Definition Dendrite.cpp:124
virtual Code CreateDefaultProteins()
Definition Dendrite.cpp:77
Pointer< molecular::Protein > mcPrepareForPotentiation
Definition Dendrite.h:171
Id mPostsynapticNeuronId
Definition Dendrite.h:187
Definition Neurite.h:33
Definition Neuron.h:51
Definition FinalCell.h:29
uint64_t Timestamp
Definition common/Types.h:52