libbio
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
bio::molecular::Protein Class Reference

#include <Protein.h>

Inheritance diagram for bio::molecular::Protein:
Inheritance graph
[legend]
Collaboration diagram for bio::molecular::Protein:
Collaboration graph
[legend]

Public Member Functions

 BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS_WITH_COMMON_CONSTRUCTOR (molecular, Protein, filter::Molecular()) virtual ~Protein()
 
virtual Code RecruitChaperones (Pointer< Vesicle > environment)
 
virtual Code Fold ()
 
virtual Code Activate (Pointer< Vesicle > context=Pointer< Vesicle >())
 
virtual Code operator() ()
 
virtual Code operator() (Pointer< Vesicle > context)
 
virtual Pointer< const DNAGetSource () const
 
virtual Code SetSource (Pointer< const DNA > source)
 
- Public Member Functions inherited from bio::molecular::Class< Protein >
 Class (Pointer< Protein > object, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (Pointer< Protein > object, const Name &name, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (Pointer< Protein > object, const Id &id, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
virtual ~Class ()
 
void SetEnvironment (Pointer< ENVIRONMENT > environment)
 
Pointer< ENVIRONMENTGetEnvironment ()
 
const Pointer< ENVIRONMENTGetEnvironment () const
 
- Public Member Functions inherited from bio::chemical::Class< T >
virtual Pointer< ::bio::physical::WaveClone () const
 
Pointer< ::bio::physical::WaveAsWave ()
 
Pointer< const ::bio::physical::WaveAsWave () const
 
 operator Pointer< ::bio::physical::Wave > ()
 
virtual Pointer< ::bio::physical::WaveModulate (Pointer< ::bio::physical::Wave > signal)
 
virtual Pointer< ::bio::physical::WaveDemodulate ()
 
virtual Pointer< const ::bio::physical::WaveDemodulate () const
 
virtual Pointer< ::bio::physical::WaveSuperpose (const ::bio::physical::ConstWaves &displacement, Pointer< ::bio::physical::Interference > pattern)
 
virtual bool Superpose (Pointer< const ::bio::physical::Wave > displacement, Pointer< ::bio::physical::Interference > pattern)
 
 Class (Pointer< T > object, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (Pointer< T > object, const Name &name, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (Pointer< T > object, const Id &id, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (const Class &other)
 
virtual bool RegisterProperties (const Properties &properties)
 
virtual Properties GetProperties () const
 
virtual Pointer< AtomAsAtom ()
 
virtual Pointer< const AtomAsAtom () const
 
virtual Code Attenuate (Pointer< const physical::Wave > other)
 
virtual Code Disattenuate (Pointer< const physical::Wave > other)
 
- Public Member Functions inherited from bio::physical::Class< T >
 Class (Pointer< T > object, Pointer< Symmetry > symmetry=NULL)
 
 Class (Pointer< T > object, SymmetryFactory symmetryFactory)
 
 Class (const Class &other)
 
virtual Pointer< TGetWaveObject ()
 
virtual Pointer< const TGetWaveObject () const
 
virtual operator T& ()
 
virtual operator const T & () const
 
Pointer< WaveAsWave ()
 
Pointer< const WaveAsWave () const
 
virtual operator Pointer< Wave > ()
 
- Public Member Functions inherited from bio::physical::Wave
 Wave (Pointer< Symmetry > symmetry=NULL)
 
 Wave (const Wave &other)
 
Waveoperator= (const Wave &other)
 
virtual ~Wave ()
 
Pointer< const SymmetryGetSymmetry () const
 
virtual bool Superpose (Pointer< const Wave > displacement, Pointer< Interference > pattern)
 
virtual Pointer< WaveSuperpose (const ConstWaves &displacement, Pointer< Interference > pattern)
 
virtual Pointer< WaveModulate (Pointer< Wave > signal)
 
Pointer< WaveAsWave ()
 
Pointer< const WaveAsWave () const
 
virtual void operator| (Pointer< Symmetry > symmetry)
 
virtual Pointer< Waveoperator* (Pointer< Wave > signal)
 
virtual Pointer< Waveoperator* ()
 
virtual Pointer< const Waveoperator* () const
 
virtual void operator+ (Pointer< const Wave > other)
 
virtual void operator- (Pointer< const Wave > other)
 
uint16_t GetTypeId () const
 
void SetTypeId (uint16_t typeId)
 
- Public Member Functions inherited from bio::physical::Identifiable< Id >
 Identifiable (Pointer< Perspective< Id > > perspective=NULL)
 
 Identifiable (const Name &name, Pointer< Perspective< Id > > perspective=NULL)
 
 Identifiable (Identifier id, Pointer< Perspective< Id > > perspective=NULL)
 
 Identifiable (const Identifiable &other)
 
virtual ~Identifiable ()
 
virtual operator Id () const
 
virtual bool operator== (const Identifier id) const
 
virtual bool operator== (const Name &name) const
 
virtual bool operator== (const Identifiable< Id > &other) const
 
virtual Name GetName () const
 
virtual Identifier GetId () const
 
virtual bool SetName (const Name &name)
 
virtual bool SetId (Identifier id)
 
virtual bool IsName (const Name &name) const
 
virtual bool IsNameInsensitive (const Name &name) const
 
virtual bool IsId (Identifier id) const
 
virtual void SetPerspective (Pointer< Perspective< Id > > perspective)
 
- Public Member Functions inherited from bio::physical::Observer< PERSPECTIVE >
 Observer (Pointer< Perspective > perspective=NULL)
 
 Observer (const Observer &other)
 
virtual ~Observer ()
 
virtual void SetPerspective (Pointer< Perspective > perspective)
 
virtual Pointer< PerspectiveGetPerspective () const
 
- Public Member Functions inherited from bio::log::Writer
 Writer ()
 
 Writer (Filter logFilter)
 
virtual ~Writer ()
 
virtual Pointer< const WriterAsLogWriter () const
 
bool IsEnabled (LogLevel level) const
 
virtual void Log (LogLevel level, const char *format, va_list args) const
 
- Public Member Functions inherited from bio::physical::Class< Writer >
 Class (Pointer< Writer > object, Pointer< Symmetry > symmetry=NULL)
 
 Class (Pointer< Writer > object, SymmetryFactory symmetryFactory)
 
 Class (const Class &other)
 
virtual Pointer< Writer > GetWaveObject ()
 
virtual Pointer< const Writer > GetWaveObject () const
 
virtual operator Writer & ()
 
virtual operator const Writer & () const
 
Pointer< WaveAsWave ()
 
Pointer< const WaveAsWave () const
 
virtual operator Pointer< Wave > ()
 
- Public Member Functions inherited from bio::physical::Filterable
 Filterable ()
 
 Filterable (Filter filter)
 
virtual ~Filterable ()
 
virtual void InitializeImplementation (ByteStreams &args)
 
virtual void SetFilter (Filter filter)
 
Filter GetFilter () const
 
- Public Member Functions inherited from bio::physical::Class< Filterable >
 Class (Pointer< Filterable > object, Pointer< Symmetry > symmetry=NULL)
 
 Class (Pointer< Filterable > object, SymmetryFactory symmetryFactory)
 
 Class (const Class &other)
 
virtual Pointer< FilterableGetWaveObject ()
 
virtual Pointer< const FilterableGetWaveObject () const
 
virtual operator Filterable & ()
 
virtual operator const Filterable & () const
 
Pointer< WaveAsWave ()
 
Pointer< const WaveAsWave () const
 
virtual operator Pointer< Wave > ()
 
- Public Member Functions inherited from bio::chemical::Atom
 Atom ()
 
 Atom (const Atom &other)
 
virtual ~Atom ()
 
void CloneBondsFrom (const Atom &other, BondClonePolicy policy=&Atom::DefaultBondClonePolicy)
 
Pointer< physical::WaveGetBonded (Valence position)
 
Pointer< const physical::WaveGetBonded (Valence position) const
 
Pointer< const physical::WaveResolveBondedForReadById (AtomicNumber bondId) const
 
Pointer< physical::WaveResolveBondedForWriteById (AtomicNumber bondId)
 
template<typename T >
Cow< TAsBonded () const
 
template<typename T >
Pointer< TAsBondedQuantum () const
 
template<typename T >
atom_detail::AsResultType< T, type::IsWaveImplementation< typenametype::RemovePointer< T >::Type >::sValue >::Type As () const
 
template<typename T >
 operator T () const
 
template<typename T >
Valence FormBond (T toBond, BondType type=bond_type::Unknown())
 
template<typename T >
bool BreakBond (T toDisassociate, BondType type=bond_type::Unknown())
 
Valence GetBondPosition (AtomicNumber bondedId) const
 
Valence GetBondPosition (const Name &typeName) const
 
Valence GetBondPositionLocked (AtomicNumber bondedId) const
 
template<typename T >
Valence GetBondPosition () const
 
BondType GetBondType (Valence position) const
 
template<typename T >
BondType GetBondType () const
 
Pointer< BondsGetAllBonds ()
 
Pointer< const BondsGetAllBonds () const
 
void ForEachBond (BondVisitor visitor, void *context=NULL) const
 
void ForEachBondMutable (BondMutator mutator, void *context=NULL)
 
virtual Valence FormBondImplementation (Pointer< physical::Wave > toBond, AtomicNumber id, BondType type)
 
Valence FormBondImplementation (Pointer< physical::Wave > toBond, AtomicNumber id, BondType type, bool ownsBonded)
 
Valence FormBondImplementationLocked (Pointer< physical::Wave > toBond, AtomicNumber id, BondType type, bool ownsBonded)
 
virtual bool BreakBondImplementation (AtomicNumber id, BondType type)
 
bool BreakBondImplementationLocked (AtomicNumber id, BondType type)
 
- Public Member Functions inherited from bio::physical::Class< Atom >
 Class (Pointer< Atom > object, Pointer< Symmetry > symmetry=NULL)
 
 Class (Pointer< Atom > object, SymmetryFactory symmetryFactory)
 
 Class (const Class &other)
 
virtual Pointer< Atom > GetWaveObject ()
 
virtual Pointer< const Atom > GetWaveObject () const
 
virtual operator Atom & ()
 
virtual operator const Atom & () const
 
Pointer< WaveAsWave ()
 
Pointer< const WaveAsWave () const
 
virtual operator Pointer< Wave > ()
 
- Public Member Functions inherited from bio::ThreadSafe
 ThreadSafe ()
 
 ThreadSafe (const ThreadSafe &toCopy)
 
ThreadSafeoperator= (const ThreadSafe &toCopy)
 
 ~ThreadSafe ()
 
void LockThread () const
 
void UnlockThread () const
 
void LockMutexShared () const
 
void UnlockMutexShared () const
 
- Public Member Functions inherited from bio::chemical::Substance
 BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS_WITH_COMMON_CONSTRUCTOR (chemical, Substance, filter::Chemical()) Substance(const UnorderedMotif< Property > &properties
 
virtual ~Substance ()
 
virtual void Enable ()
 
virtual void Disable ()
 
virtual bool IsEnabled () const
 
- Public Member Functions inherited from bio::chemical::Class< Substance >
virtual Pointer< ::bio::physical::WaveClone () const
 
Pointer< ::bio::physical::WaveAsWave ()
 
Pointer< const ::bio::physical::WaveAsWave () const
 
 operator Pointer< ::bio::physical::Wave > ()
 
virtual Pointer< ::bio::physical::WaveModulate (Pointer< ::bio::physical::Wave > signal)
 
virtual Pointer< ::bio::physical::WaveDemodulate ()
 
virtual Pointer< const ::bio::physical::WaveDemodulate () const
 
virtual Pointer< ::bio::physical::WaveSuperpose (const ::bio::physical::ConstWaves &displacement, Pointer< ::bio::physical::Interference > pattern)
 
virtual bool Superpose (Pointer< const ::bio::physical::Wave > displacement, Pointer< ::bio::physical::Interference > pattern)
 
 Class (Pointer< Substance > object, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (Pointer< Substance > object, const Name &name, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (Pointer< Substance > object, const Id &id, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (const Class &other)
 
virtual bool RegisterProperties (const Properties &properties)
 
virtual Properties GetProperties () const
 
virtual Pointer< AtomAsAtom ()
 
virtual Pointer< const AtomAsAtom () const
 
virtual Code Attenuate (Pointer< const physical::Wave > other)
 
virtual Code Disattenuate (Pointer< const physical::Wave > other)
 
- Public Member Functions inherited from bio::Covalent< UnorderedMotif< Property > >
 Covalent ()
 
 Covalent (const Covalent &other)
 
virtual ~Covalent ()
 
Covalentoperator= (const Covalent &other)
 
Pointer< UnorderedMotif< Property > > Object ()
 
Pointer< const UnorderedMotif< Property > > Object () const
 
- Public Member Functions inherited from bio::Covalent< UnorderedMotif< State > >
 Covalent ()
 
 Covalent (const Covalent &other)
 
virtual ~Covalent ()
 
Covalentoperator= (const Covalent &other)
 
Pointer< UnorderedMotif< State > > Object ()
 
Pointer< const UnorderedMotif< State > > Object () const
 
- Public Member Functions inherited from bio::chemical::Structure
 Structure ()
 
virtual ~Structure ()
 
- Public Member Functions inherited from bio::chemical::UnorderedStructureInterface
 UnorderedStructureInterface ()
 
virtual ~UnorderedStructureInterface ()
 
template<typename T >
T Add (const T t)
 
template<typename T >
Pointer< TAdd (Pointer< T > t)
 
template<typename T >
Code Remove (const T t)
 
template<typename T >
Code Remove (Pointer< T > t)
 
template<typename T >
void Import (Pointer< const UnorderedMotif< T > > other)
 
template<typename T >
void Import (Pointer< const LinearMotif< T > > other)
 
template<typename T >
void Import (const ::bio::Arrangement< T > &other)
 
Code ImportAll (Pointer< const physical::Wave > other)
 
template<typename T >
Index GetCount () const
 
template<typename T >
Pointer< ContainerGetAll ()
 
template<typename T >
Pointer< const ContainerGetAll () const
 
template<typename T >
bool Has (T content) const
 
template<typename T >
bool Has (Pointer< T > content) const
 
template<typename T >
unsigned int GetNumMatching (Pointer< const Container > other) const
 
template<typename T >
bool HasAll (Pointer< const Container > contents) const
 
template<typename T >
void Clear ()
 
template<typename T >
std::string GetStringFrom (std::string separator=", ")
 
template<typename T >
void Log (const LogLevel &level=log_level::Info(), const Filter &filter=FilterPerspective::InvalidId())
 
- Public Member Functions inherited from bio::chemical::LinearStructureInterface
 LinearStructureInterface ()
 
virtual ~LinearStructureInterface ()
 
template<typename T >
Code Insert (typename LinearStructureRequest< T >::PointerType toAdd, const Position position=BOTTOM, const Id optionalPositionArg=0, const bool transferSubContents=false)
 
template<typename T >
LinearStructureRequest< T >::PointerType GetById (const Id &id)
 
template<typename T >
const LinearStructureRequest< T >::PointerType GetById (const Id &id) const
 
template<typename T >
LinearStructureRequest< T >::PointerType GetByName (const Name &name)
 
template<typename T >
const LinearStructureRequest< T >::PointerType GetByName (const Name &name) const
 
template<typename T >
LinearStructureRequest< T >::PointerType GetOrCreateById (Id id)
 
template<typename T >
LinearStructureRequest< T >::PointerType GetOrCreateByName (const Name &name)
 
template<typename T >
Code RemoveById (const Id &id)
 
template<typename T >
Code RemoveByName (const Name &name)
 
template<typename T >
LinearMotif< typenameLinearStructureRequest< T >::Pointee >::Contents GetAllLike (Pointer< const Affinity > affinity) const
 
template<typename T >
Emission ForEach (Pointer< ExcitationBase > excitation)
 
- Public Member Functions inherited from bio::Covalent< chemical::LinearMotif< Protein > >
 Covalent ()
 
 Covalent (const Covalent &other)
 
virtual ~Covalent ()
 
Covalentoperator= (const Covalent &other)
 
Pointer< chemical::LinearMotif< Protein > > Object ()
 
Pointer< const chemical::LinearMotif< Protein > > Object () const
 
- Public Member Functions inherited from bio::chemical::EnvironmentDependent< Vesicle >
 EnvironmentDependent (EnvironmentPointer environment=NULL)
 
virtual ~EnvironmentDependent ()
 
virtual EnvironmentPointer GetEnvironment ()
 
virtual const EnvironmentPointer GetEnvironment () const
 
virtual void SetEnvironment (EnvironmentPointer environment)
 
- Public Member Functions inherited from bio::molecular::Molecule
 BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS_WITH_COMMON_CONSTRUCTOR (molecular, Molecule, filter::Molecular()) Molecule(const Molecule &toCopy)
 
virtual ~Molecule ()
 
template<typename T >
Id Use (const Name &varName, Pointer< T > varPtr)
 
template<typename T >
Id Use (const Id &id, Pointer< T > varPtr)
 
Id Define (const Name &varName)
 
Id Define (const Id &id)
 
template<typename T >
Id Define (const Name &varName)
 
template<typename T >
Id Define (const Id &id)
 
template<typename T >
Id Define (const Name &varName, const T &assignment)
 
template<typename T >
Id Define (const Id &id, const T &assignment)
 
virtual Pointer< SurfaceRotateTo (const Id &surfaceId)
 
virtual Pointer< const SurfaceRotateTo (const Id &surfaceId) const
 
virtual Pointer< SurfaceRotateTo (const Name &surfaceName)
 
virtual Pointer< const SurfaceRotateTo (const Name &surfaceName) const
 
virtual Pointer< SurfaceRotateToOrDefine (const Id &surfaceId)
 
Pointer< SurfaceRotateToOrDefine (const Name &surfaceName)
 
template<typename T >
Pointer< SurfaceRotateToOrDefine (const Id &surfaceId, T &assignment)
 
template<typename T >
Pointer< SurfaceRotateToOrDefine (const Name &surfaceName, T &assignment)
 
virtual bool DuplicateFrom (Pointer< Molecule > source, const Name &surface)
 
virtual bool TransferFrom (Pointer< Molecule > source, const Name &surface)
 
virtual Pointer< const physical::SymmetrySpin () const
 
virtual Code Reify (Pointer< const physical::Symmetry > symmetry)
 
virtual Pointer< Surfaceoperator() (const Id &surfaceId)
 
virtual Pointer< const Surfaceoperator() (const Id &surfaceId) const
 
template<typename T >
Pointer< Surfaceoperator() (const Id &surfaceId)
 
virtual Pointer< Surfaceoperator() (const Name &name)
 
virtual Pointer< const Surfaceoperator() (const Name &name) const
 
template<typename T >
Pointer< Surfaceoperator() (const Name &surfaceName)
 
virtual Pointer< Moleculeoperator<< (Pointer< Surface > source)
 
virtual Pointer< Surfaceoperator>> (Pointer< Surface > target)
 
virtual Pointer< Moleculeoperator<< (Pointer< Molecule > source)
 
virtual Pointer< Moleculeoperator>> (Pointer< Molecule > target)
 
- Public Member Functions inherited from bio::molecular::Class< Molecule >
 Class (Pointer< Molecule > object, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (Pointer< Molecule > object, const Name &name, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
 Class (Pointer< Molecule > object, const Id &id, Filter filter=filter::Default(), SymmetryType symmetryType=symmetry_type::Object())
 
virtual ~Class ()
 
void SetEnvironment (Pointer< ENVIRONMENT > environment)
 
Pointer< ENVIRONMENTGetEnvironment ()
 
const Pointer< ENVIRONMENTGetEnvironment () const
 
- Public Member Functions inherited from bio::Metallic< chemical::DependentMotif< Surface, Molecule > >
 Metallic ()
 
 Metallic (const Metallic &other)
 
virtual ~Metallic ()
 
Metallicoperator= (const Metallic &other)
 
Pointer< chemical::DependentMotif< Surface, Molecule > > Object ()
 
Pointer< const chemical::DependentMotif< Surface, Molecule > > Object () const
 

Protected Member Functions

Code ValidateActivationContext (Pointer< Vesicle > context) const
 
- Protected Member Functions inherited from bio::chemical::Elementary< T >
void RegisterType ()
 
 Elementary (const Properties properties)
 
 Elementary ()
 
virtual ~Elementary ()
 
- Protected Member Functions inherited from bio::physical::Identifiable< Id >
virtual void InitializeImplementation (ByteStreams &args)
 
friend::std::ostream & operator<< (std::ostream &out, const Identifiable< Id > &t)
 
 Identifiable (Pointer< Perspective< Id > > perspective=NULL)
 
 Identifiable (const Name &name, Pointer< Perspective< Id > > perspective=NULL)
 
 Identifiable (Identifier id, Pointer< Perspective< Id > > perspective=NULL)
 
 Identifiable (const Identifiable &other)
 
virtual ~Identifiable ()
 
virtual operator Id () const
 
virtual bool operator== (const Identifier id) const
 
virtual bool operator== (const Name &name) const
 
virtual bool operator== (const Identifiable< Id > &other) const
 
virtual Name GetName () const
 
virtual Identifier GetId () const
 
virtual bool SetName (const Name &name)
 
virtual bool SetId (Identifier id)
 
virtual bool IsName (const Name &name) const
 
virtual bool IsNameInsensitive (const Name &name) const
 
virtual bool IsId (Identifier id) const
 
virtual void SetPerspective (Pointer< Perspective< Id > > perspective)
 
- Protected Member Functions inherited from bio::physical::Observer< PERSPECTIVE >
 Observer (Pointer< Perspective > perspective=NULL)
 
 Observer (const Observer &other)
 
virtual ~Observer ()
 
virtual void SetPerspective (Pointer< Perspective > perspective)
 
virtual Pointer< PerspectiveGetPerspective () const
 
- Protected Member Functions inherited from bio::VirtualBase
 VirtualBase ()
 
virtual ~VirtualBase ()
 
void Initialize (ByteStreams &args)
 
void Initialize (ByteStream arg1)
 
void Initialize (ByteStream arg1, ByteStream arg2)
 
void Initialize (ByteStream arg1, ByteStream arg2, ByteStream arg3)
 
- Protected Member Functions inherited from bio::log::Writer
 Writer ()
 
 Writer (Filter logFilter)
 
virtual ~Writer ()
 
virtual Pointer< const WriterAsLogWriter () const
 
bool IsEnabled (LogLevel level) const
 
virtual void Log (LogLevel level, const char *format, va_list args) const
 
- Protected Member Functions inherited from bio::physical::Class< Writer >
 Class (Pointer< Writer > object, Pointer< Symmetry > symmetry=NULL)
 
 Class (Pointer< Writer > object, SymmetryFactory symmetryFactory)
 
 Class (const Class &other)
 
virtual Pointer< Writer > GetWaveObject ()
 
virtual Pointer< const Writer > GetWaveObject () const
 
virtual operator Writer & ()
 
virtual operator const Writer & () const
 
Pointer< WaveAsWave ()
 
Pointer< const WaveAsWave () const
 
virtual operator Pointer< Wave > ()
 
- Protected Member Functions inherited from bio::physical::Filterable
 Filterable ()
 
 Filterable (Filter filter)
 
virtual ~Filterable ()
 
virtual void InitializeImplementation (ByteStreams &args)
 
virtual void SetFilter (Filter filter)
 
Filter GetFilter () const
 
- Protected Member Functions inherited from bio::physical::Class< Filterable >
 Class (Pointer< Filterable > object, Pointer< Symmetry > symmetry=NULL)
 
 Class (Pointer< Filterable > object, SymmetryFactory symmetryFactory)
 
 Class (const Class &other)
 
virtual Pointer< FilterableGetWaveObject ()
 
virtual Pointer< const FilterableGetWaveObject () const
 
virtual operator Filterable & ()
 
virtual operator const Filterable & () const
 
Pointer< WaveAsWave ()
 
Pointer< const WaveAsWave () const
 
virtual operator Pointer< Wave > ()
 
- Protected Member Functions inherited from bio::chemical::Atom
void IndexBond (AtomicNumber bondedId, Valence position)
 
void UnindexBond (AtomicNumber bondedId)
 
 Atom ()
 
 Atom (const Atom &other)
 
virtual ~Atom ()
 
void CloneBondsFrom (const Atom &other, BondClonePolicy policy=&Atom::DefaultBondClonePolicy)
 
Pointer< physical::WaveGetBonded (Valence position)
 
Pointer< const physical::WaveGetBonded (Valence position) const
 
Pointer< const physical::WaveResolveBondedForReadById (AtomicNumber bondId) const
 
Pointer< physical::WaveResolveBondedForWriteById (AtomicNumber bondId)
 
template<typename T >
Cow< TAsBonded () const
 
template<typename T >
Pointer< TAsBondedQuantum () const
 
template<typename T >
atom_detail::AsResultType< T, type::IsWaveImplementation< typenametype::RemovePointer< T >::Type >::sValue >::Type As () const
 
template<typename T >
 operator T () const
 
template<typename T >
Valence FormBond (T toBond, BondType type=bond_type::Unknown())
 
template<typename T >
bool BreakBond (T toDisassociate, BondType type=bond_type::Unknown())
 
Valence GetBondPosition (AtomicNumber bondedId) const
 
Valence GetBondPosition (const Name &typeName) const
 
Valence GetBondPositionLocked (AtomicNumber bondedId) const
 
template<typename T >
Valence GetBondPosition () const
 
BondType GetBondType (Valence position) const
 
template<typename T >
BondType GetBondType () const
 
Pointer< BondsGetAllBonds ()
 
Pointer< const BondsGetAllBonds () const
 
void ForEachBond (BondVisitor visitor, void *context=NULL) const
 
void ForEachBondMutable (BondMutator mutator, void *context=NULL)
 
virtual Valence FormBondImplementation (Pointer< physical::Wave > toBond, AtomicNumber id, BondType type)
 
Valence FormBondImplementation (Pointer< physical::Wave > toBond, AtomicNumber id, BondType type, bool ownsBonded)
 
Valence FormBondImplementationLocked (Pointer< physical::Wave > toBond, AtomicNumber id, BondType type, bool ownsBonded)
 
virtual bool BreakBondImplementation (AtomicNumber id, BondType type)
 
bool BreakBondImplementationLocked (AtomicNumber id, BondType type)
 
- Protected Member Functions inherited from bio::physical::Class< Atom >
 Class (Pointer< Atom > object, Pointer< Symmetry > symmetry=NULL)
 
 Class (Pointer< Atom > object, SymmetryFactory symmetryFactory)
 
 Class (const Class &other)
 
virtual Pointer< Atom > GetWaveObject ()
 
virtual Pointer< const Atom > GetWaveObject () const
 
virtual operator Atom & ()
 
virtual operator const Atom & () const
 
Pointer< WaveAsWave ()
 
Pointer< const WaveAsWave () const
 
virtual operator Pointer< Wave > ()
 
- Protected Member Functions inherited from bio::ThreadSafe
 ThreadSafe ()
 
 ThreadSafe (const ThreadSafe &toCopy)
 
ThreadSafeoperator= (const ThreadSafe &toCopy)
 
 ~ThreadSafe ()
 
void LockThread () const
 
void UnlockThread () const
 
void LockMutexShared () const
 
void UnlockMutexShared () const
 
- Protected Member Functions inherited from bio::chemical::LinearStructureInterface
template<typename T >
Pointer< LinearMotif< T > > ResolveLinearMotif ()
 
template<typename T >
Pointer< const LinearMotif< T > > ResolveLinearMotif () const
 

Protected Attributes

Pointer< const DNAmSource
 
- Protected Attributes inherited from bio::physical::Class< T >
Pointer< TmObject
 
- Protected Attributes inherited from bio::physical::Wave
LazyPointer< SymmetrymSymmetry
 
bool mHasSignal
 
uint16_t mTypeId
 
- Protected Attributes inherited from bio::VirtualBase
bool mHasBeenInitialized
 
- Protected Attributes inherited from bio::physical::Class< Writer >
Pointer< Writer > mObject
 
- Protected Attributes inherited from bio::physical::Filterable
Filter mFilter
 
- Protected Attributes inherited from bio::physical::Class< Filterable >
Pointer< FilterablemObject
 
- Protected Attributes inherited from bio::chemical::Atom
Bonds mBonds
 
::std::map< AtomicNumber, ValencemBondIndex
 
Arrangement< Pointer< const physical::Wave > > mBackflowPreventer
 
- Protected Attributes inherited from bio::physical::Class< Atom >
Pointer< Atom > mObject
 
- Protected Attributes inherited from bio::Covalent< UnorderedMotif< Property > >
Pointer< UnorderedMotif< Property > > mT
 
- Protected Attributes inherited from bio::Covalent< UnorderedMotif< State > >
Pointer< UnorderedMotif< State > > mT
 
- Protected Attributes inherited from bio::Covalent< chemical::LinearMotif< Protein > >
Pointer< chemical::LinearMotif< Protein > > mT
 
- Protected Attributes inherited from bio::chemical::EnvironmentDependent< Vesicle >
EnvironmentPointer mEnvironment
 
- Protected Attributes inherited from bio::Metallic< chemical::DependentMotif< Surface, Molecule > >
Pointer< chemical::DependentMotif< Surface, Molecule > > mT
 

Additional Inherited Members

- Public Types inherited from bio::physical::Identifiable< Id >
typedef Id Identifier
 
typedef Arrangement< IdentifierIds
 
- Public Types inherited from bio::physical::Observer< PERSPECTIVE >
typedef PERSPECTIVE Perspective
 
- Public Types inherited from bio::chemical::Atom
typedef BondCloneAction(* BondClonePolicy) (const Bond &bond)
 
typedef void(* BondVisitor) (const Bond &bond, void *context)
 
typedef BondCloneAction(* BondMutator) (Bond &bond, void *context)
 
- Public Types inherited from bio::chemical::EnvironmentDependent< Vesicle >
typedef type::RemovePointer< Vesicle >::Type EnvironmentType
 
typedef Pointer< EnvironmentTypeEnvironmentPointer
 
- Static Public Member Functions inherited from bio::physical::Class< T >
static Pointer< TConvert (Pointer< Wave > wave)
 
- Static Public Member Functions inherited from bio::physical::Wave
static Properties GetResonanceBetween (ConstWaves waves)
 
static Properties GetResonanceBetween (Pointer< const Wave > wave1, Pointer< const Wave > wave2)
 
static Properties GetResonanceBetween (Pointer< const Wave > wave, const Properties &properties)
 
- Static Public Member Functions inherited from bio::log::Writer
static void Log (Pointer< const Writer > writer, LogLevel level, const char *format,...)
 
static bool ShouldLog (Pointer< const Writer > writer, LogLevel level)
 
- Static Public Member Functions inherited from bio::physical::Class< Writer >
static Pointer< Writer > Convert (Pointer< Wave > wave)
 
- Static Public Member Functions inherited from bio::physical::Class< Filterable >
static Pointer< FilterableConvert (Pointer< Wave > wave)
 
- Static Public Member Functions inherited from bio::chemical::Atom
static BondCloneAction DefaultBondClonePolicy (const Bond &bond)
 
template<typename T >
static AtomicNumber GetBondId ()
 
- Static Public Member Functions inherited from bio::physical::Class< Atom >
static Pointer< Atom > Convert (Pointer< Wave > wave)
 
- Static Public Member Functions inherited from bio::chemical::UnorderedStructureInterface
static void ImportAllCollectVisitor (const chemical::Bond &bond, void *ctx)
 
- Static Public Member Functions inherited from bio::Metallic< chemical::DependentMotif< Surface, Molecule > >
static void DonateCollectVisitor (const chemical::Bond &bond, void *ctx)
 
static void DonateBonds (Pointer< chemical::Atom > donor, Pointer< chemical::Atom > receiver)
 
static void BreakDonatedCollectVisitor (const chemical::Bond &bond, void *ctx)
 
static void BreakDonatedBonds (Pointer< chemical::Atom > receiver)
 
static BondType GetBondType ()
 
- Public Attributes inherited from bio::chemical::Substance
const UnorderedMotif< State > & states
 
- Protected Types inherited from bio::physical::Identifiable< Id >
typedef Id Identifier
 
typedef Arrangement< IdentifierIds
 
- Protected Types inherited from bio::physical::Observer< PERSPECTIVE >
typedef PERSPECTIVE Perspective
 
- Protected Types inherited from bio::chemical::Atom
typedef BondCloneAction(* BondClonePolicy) (const Bond &bond)
 
typedef void(* BondVisitor) (const Bond &bond, void *context)
 
typedef BondCloneAction(* BondMutator) (Bond &bond, void *context)
 
- Static Protected Member Functions inherited from bio::log::Writer
static void Log (Pointer< const Writer > writer, LogLevel level, const char *format,...)
 
static bool ShouldLog (Pointer< const Writer > writer, LogLevel level)
 
- Static Protected Member Functions inherited from bio::physical::Class< Writer >
static Pointer< Writer > Convert (Pointer< Wave > wave)
 
- Static Protected Member Functions inherited from bio::physical::Class< Filterable >
static Pointer< FilterableConvert (Pointer< Wave > wave)
 
- Static Protected Member Functions inherited from bio::chemical::Atom
static BondCloneAction DefaultBondClonePolicy (const Bond &bond)
 
template<typename T >
static AtomicNumber GetBondId ()
 
- Static Protected Member Functions inherited from bio::physical::Class< Atom >
static Pointer< Atom > Convert (Pointer< Wave > wave)
 

Detailed Description

Please read the documentation for Molecule.h to understand how Proteins can best be used.
In short, Proteins provide functions for the Biology programming syntax.
Proteins are Molecules and can be stored inside Surfaces. This means they will work with Define<Protein>("MyFunction", *myProtein).
Proteins can thus be Transferred, reflected, and treated as any other Molecule, chemical::Substance, physical::Wave, etc.
NOTE: Because Proteins are Molecules, they are more than just simple functors; they can store variables, facilitate in Transferring variables, and act as any other data structure.

Proteins can have other Proteins within them. This is comparable to a quaternary structure in real proteins.

Proteins must be Folded on or within a Vesicle. While this restriction is unrealistic, the structure it imposes is useful for programming.

Member Function Documentation

◆ Activate()

Code bio::molecular::Protein::Activate ( Pointer< Vesicle context = PointerVesicle >())
virtual

There is a SINGLE Activate method. Override it to add whatever
functionality is desired.
context is the per-call caller: the Vesicle (e.g. Cell) Activating
*this, or NULL if there is none (e.g. a nullary call). A single, shared,
stateless Protein can therefore learn its caller per-Activation instead
of relying on last-writer-wins caller state set at RecruitChaperones
time. Read context as the per-call caller; do NOT bind it into
mEnvironment (it stays the install-time home).
It is likely desirable, though not enforced, to call
Protein::Activate(context) at the END of any overwritten function. This
fans the context out to all sub-Proteins.
If *this has property::Extracellular(), NULL context is invalid and
activation returns code::MissingArgument1().

Parameters
contextthe Vesicle (e.g. Cell) Activating *this (NULL if none).
Returns
result of Activation.

Reimplemented in bio::genetic::FetchPlasmid, bio::genetic::LoadPlasmidFromDisk, bio::genetic::RegisterPlasmid, bio::genetic::RNAPolymerase, bio::neural::AxonGuide, bio::neural::GuideOneToOne, and bio::neural::GuideRandom.

◆ BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS_WITH_COMMON_CONSTRUCTOR()

bio::molecular::Protein::BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS_WITH_COMMON_CONSTRUCTOR ( molecular  ,
Protein  ,
filter::Molecular()   
)

Ensure virtual methods point to Class implementations.
These are easy to use but require setting the Source after instantiation.
For example:
Protein myProtein = Protein("MyProtein");
myProtein.SetSource(myDNA); //myDNA created sometime earlier.

◆ Fold()

Code bio::molecular::Protein::Fold ( )
virtual

Fold will ensure *this is functional in the Molecular environment (Vesicle)
This means it will make sure all Molecules, Reactions, and other Proteins needed are present.
It is your responsibility to make this true for your Proteins.

This is to be called ONCE on startup.
It is highly recommended, though not enforced, to call Protein::Fold at the end of any overwritten function. This will call initialize for any sub proteins. If that is not done, some proteins may not be initialized and the behavior will be undefined. (follow the RecruitChaperones example).

NOTE: If RecruitChaperones does not return code::Success(), Fold will not be called at all.

Returns
result of Folding.

Reimplemented in bio::neural::AxonGuide, bio::neural::AxonProtein< AXON_TYPE, PRESYNAPTIC_NEURON_TYPE >, bio::neural::AxonProtein< SYNAPSE_TYPE, POSTSYNAPTIC_NEURON_TYPE >, bio::neural::CallerDependentProtein< CALLER >, bio::neural::CallerDependentProtein< AXON_TYPE >, bio::neural::CallerDependentProtein< DENDRITE_TYPE >, bio::neural::CallerDependentProtein< SYNAPSE_TYPE >, bio::neural::DendriteProtein< DENDRITE_TYPE, POSTSYNAPTIC_NEURON_TYPE >, bio::neural::DendriteProtein< SYNAPSE_TYPE, PRESYNAPTIC_NEURON_TYPE >, and bio::neural::SynapseProtein< SYNAPSE_TYPE, PRESYNAPTIC_NEURON_TYPE, POSTSYNAPTIC_NEURON_TYPE >.

◆ GetSource()

Pointer< const DNA > bio::molecular::Protein::GetSource ( ) const
virtual

Proteins originate from DNA.
This allows us to tell 2 otherwise identical Proteins apart.
For example, Protein with name "DoMyAction" gets replaced with a "DoMyAction" from an updated Gene. Both Proteins will return true on == comparison but may have different functionality which would only be known by getting the mSource.

Returns
the mSource of *this.

◆ operator()() [1/2]

Code bio::molecular::Protein::operator() ( )
virtual

The () operator is the primary function that will be called when accessing *this.
Calling Protein::operator() just forwards to Activate.

Returns
Activate()

◆ operator()() [2/2]

Code bio::molecular::Protein::operator() ( Pointer< Vesicle context)
virtual

Context-aware call operator; forwards to Activate(context).

Parameters
contextthe Vesicle Activating *this.
Returns
Activate(context)

◆ RecruitChaperones()

Code bio::molecular::Protein::RecruitChaperones ( Pointer< Vesicle environment)
virtual

RecruitChaperones can be used to make sure that the environment has all the necessary components for *this to function before it Fold()s.
If this method returns Success, *this and its sub-Proteins will be Folded.

Override this method to add whatever start-up checks you need.
It is recommended to call the parent method AFTER your own checks, which will call RecruitChaperones for all sub-Proteins.

For example:
virtual Code RecruitChaperones(Pointer< Vesicle > environment) {
BIO_SANITIZE(MyChecks(),,return code::GeneralFailure())
return Protein::RecruitChaperones(environment);
}

This also sets mEnvironment to the environment provided.

Parameters
environment
Returns
result of chaperone recruitment & whether or not Fold should be called.

Reimplemented in bio::neural::AxonGuide.

◆ SetSource()

Code bio::molecular::Protein::SetSource ( Pointer< const DNA source)
virtual

Set the mSource of *this

Parameters
source
Returns
the result of setting (e.g. code::Success()).

◆ ValidateActivationContext()

Code bio::molecular::Protein::ValidateActivationContext ( Pointer< Vesicle context) const
protected

Shared validation for Activate overrides. Subclasses that perform work before calling Protein::Activate(context) should call this first.

Member Data Documentation

◆ mSource

Pointer< const DNA > bio::molecular::Protein::mSource
protected

The documentation for this class was generated from the following files: