37template <
class CLASS>
79 return this->
mT.operator Id();
87 template <
typename AS >
95 return this->
mT.operator|(symmetry);
100 return this->
mT.operator*(signal);
105 return this->
mT.operator*();
110 return this->
mT.operator*();
115 this->
mT.operator+(other);
120 return this->
mT.operator-(other);
125 return this->
mT.operator==(id);
130 return this->
mT.operator==(name);
135 return this->
mT.operator==(other);
144 return this->
mT.Clone();
148 return this->
mT.AsWave();
152 return this->
mT.AsWave();
156 return this->
mT.RegisterProperties(properties);
160 return this->
mT.GetProperties();
164 return this->
mT.AsAtom();
168 return this->
mT.AsAtom();
172 return this->
mT.Modulate(signal);
176 return this->
mT.Demodulate();
180 return this->
mT.Demodulate();
184 return this->
mT.Attenuate(other);
188 return this->
mT.Disattenuate(other);
192 return this->
mT.AsLogWriter();
206 template <
typename ENVIRONMENT >
211 template <
typename ENVIRONMENT >
216 template <
typename ENVIRONMENT >
226 template <
typename T >
232 template <
typename T >
238 template <
typename T >
244 template <
typename T >
250 template <
typename T >
258 return this->
mT.ImportAll(other);
261 template <
typename T >
267 template <
typename T >
273 template <
typename T >
279 template <
typename T >
285 template <
typename T >
291 template <
typename T >
297 template <
typename T >
303 template <
typename T >
309 template <
typename T >
319 template <
typename T >
335 template <
typename T >
341 template <
typename T >
347 template <
typename T >
353 template <
typename T >
359 template <
typename T >
365 template <
typename T >
371 template <
typename T >
383 return this->
mT.Enable();
387 return this->
mT.Disable();
391 return this->
mT.IsEnabled();
398 template <
typename T >
404 template <
typename T >
410 template <
typename T >
418 template <
typename T >
431 #if defined(__GNUC__) || defined(__clang__)
432 #pragma GCC diagnostic push
433 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
435 BIO_DEPRECATED(
"Use Final<>::ForEachBond / ForEachBondMutable; GetAllBonds bypasses the per-Atom lock. See RFC_ATOM_THREADSAFE_BOND_LOCK.md §5.")
438 return this->
mT.GetAllBonds();
441 BIO_DEPRECATED(
"Use Final<>::ForEachBond / ForEachBondMutable; GetAllBonds bypasses the per-Atom lock. See RFC_ATOM_THREADSAFE_BOND_LOCK.md §5.")
444 return this->
mT.GetAllBonds();
446 #if defined(__GNUC__) || defined(__clang__)
447 #pragma GCC diagnostic pop
472 return this->
mT.GetName();
477 return this->
mT.GetId();
482 return this->
mT.SetName(name);
487 return this->
mT.SetId(
id);
492 return this->
mT.IsName(name);
497 return this->
mT.IsNameInsensitive(name);
502 return this->
mT.IsId(
id);
512 return this->
mT.MakeWave();
517 return this->
mT.GetPerspective();
526 return this->
mT.Spin();
531 return this->
mT.Reify(symmetry);
#define BIO_DEPRECATED(message)
Definition LanguageMacros.h:62
Final()
Definition Final.h:46
Pointer< const physical::Wave > Demodulate() const
Definition Final.h:178
Pointer< const physical::Wave > AsWave() const
Definition Final.h:150
Code Reify(Pointer< const physical::Symmetry > symmetry)
Definition Final.h:529
T GetOrCreateByName(const Name &name)
Definition Final.h:366
const Pointer< ENVIRONMENT > GetEnvironment() const
Definition Final.h:217
Pointer< physical::Wave > operator*(Pointer< physical::Wave > signal)
Definition Final.h:98
void Clear()
Definition Final.h:298
void Log(LogLevel level, const char *format,...) const
Definition Final.h:454
Final(const Id &id)
Definition Final.h:62
Id GetId() const
Definition Final.h:475
void SetEnvironment(Pointer< ENVIRONMENT > environment)
Definition Final.h:207
T GetById(const Id &id)
Definition Final.h:336
bool IsId(const Id &id) const
Definition Final.h:500
T GetOrCreateById(const Id &id)
Definition Final.h:360
Pointer< ENVIRONMENT > GetEnvironment()
Definition Final.h:212
Pointer< physical::Wave > Demodulate()
Definition Final.h:174
Final(const Name &name)
Definition Final.h:54
Pointer< physical::Wave > AsWave()
Definition Final.h:146
bool operator==(const Name &name) const
Definition Final.h:128
const T GetByName(const Name &name) const
Definition Final.h:354
bool Has(T content) const
Definition Final.h:280
T As()
Definition Final.h:399
void SetPerspective(Pointer< physical::Perspective< Id > > perspective)
Definition Final.h:505
Pointer< const Container > GetAll() const
Definition Final.h:274
bool IsNameInsensitive(const Name &name) const
Definition Final.h:495
unsigned int GetNumMatching(Pointer< const Container > other) const
Definition Final.h:286
bool operator==(const physical::Identifiable< Id > &other) const
Definition Final.h:133
void operator+(Pointer< const physical::Wave > other)
Definition Final.h:113
void SetName(const Name &name)
Definition Final.h:480
Properties GetProperties() const
Definition Final.h:158
void operator-(Pointer< const physical::Wave > other)
Definition Final.h:118
void Import(Pointer< const chemical::LinearMotif< T > > other)
Definition Final.h:245
Pointer< const physical::Wave > operator*() const
Definition Final.h:108
Pointer< physical::Wave > Clone() const
Definition Final.h:142
void Import(Pointer< const chemical::UnorderedMotif< T > > other)
Definition Final.h:239
T Add(const T t)
Definition Final.h:227
bool FormBond(T toBond, BondType type=bond_type::Unknown())
Definition Final.h:411
Pointer< chemical::Atom > AsAtom()
Definition Final.h:162
Index GetCount() const
Definition Final.h:262
Pointer< physical::Perspective< Id > > GetPerspective() const
Definition Final.h:515
void Import(const ::bio::Arrangement< T > &other)
Definition Final.h:251
Pointer< Container > GetAll()
Definition Final.h:268
bool IsName(const Name &name) const
Definition Final.h:490
void Enable()
Definition Final.h:381
Pointer< physical::Wave > operator*()
Definition Final.h:103
Code Insert(T toAdd, const Position position=BOTTOM, const Id optionalPositionArg=0, const bool transferSubContents=false)
Definition Final.h:320
Code Disattenuate(Pointer< const physical::Wave > other)
Definition Final.h:186
const T As() const
Definition Final.h:405
bool IsEnabled() const
Definition Final.h:389
bool BreakBond(T toDisassociate, BondType type=bond_type::Unknown())
Definition Final.h:419
bool operator==(const Id id) const
Definition Final.h:123
Code ImportAll(Pointer< const physical::Wave > other)
Definition Final.h:256
void SetId(const Id &id)
Definition Final.h:485
Code Remove(const T t)
Definition Final.h:233
std::string GetStringFrom(std::string separator=", ")
Definition Final.h:304
Pointer< physical::Wave > Modulate(Pointer< physical::Wave > signal)
Definition Final.h:170
Pointer< const physical::Symmetry > Spin() const
Definition Final.h:524
Pointer< const ::bio::log::Writer > AsLogWriter() const
Definition Final.h:190
void Log()
Definition Final.h:310
void operator|(Pointer< physical::Symmetry > symmetry)
Definition Final.h:93
const T GetById(const Id &id) const
Definition Final.h:342
void Log(::bio::LogLevel level, const char *format, va_list args) const
Definition Final.h:194
Pointer< chemical::Bonds > GetAllBonds()
Definition Final.h:436
void MakeWave(bool force=false)
Definition Final.h:510
chemical::Emission ForEach(Pointer< chemical::ExcitationBase > excitation)
Definition Final.h:372
T GetByName(const Name &name)
Definition Final.h:348
bool RegisterProperties(const Properties &properties)
Definition Final.h:154
~Final()
Definition Final.h:70
void Disable()
Definition Final.h:385
Code Attenuate(Pointer< const physical::Wave > other)
Definition Final.h:182
Name GetName() const
Definition Final.h:470
Pointer< const chemical::Atom > AsAtom() const
Definition Final.h:166
bool HasAll(Pointer< const Container > contents) const
Definition Final.h:292
Definition TransparentWrapper.h:64
CLASS mT
Definition TransparentWrapper.h:150
Definition LinearMotif.h:133
Definition UnorderedMotif.h:65
Definition FinalCell.h:29
Position
Definition chemical/common/Types.h:59
@ BOTTOM
Definition chemical/common/Types.h:61