ARB
|
Generic smart pointer. More...
#include <smartptr.h>
Public Member Functions | |
SmartPtr () | |
build Smart-NULp-Ptr More... | |
SmartPtr (T *p) | |
~SmartPtr () | |
SmartPtr (const SmartPtr< T, C > &other) | |
SmartPtr< T, C > & | operator= (const SmartPtr< T, C > &other) |
const T * | operator-> () const |
T * | operator-> () |
const T & | operator* () const |
T & | operator* () |
bool | isSet () const |
test if SmartPtr is not NULp More... | |
bool | isNull () const |
test if SmartPtr is NULp More... | |
void | setNull () |
set SmartPtr to NULp More... | |
void | assign (T *p) |
set SmartPtr to new content or NULp More... | |
const T * | content () const |
convert SmartPtr to plain old pointer (also works if isNull()) More... | |
SmartPtr< T, C > | deep_copy () const |
bool | sameObject (const SmartPtr< T, C > &other) const |
unsigned | references () const |
Generic smart pointer.
Definition at line 149 of file smartptr.h.
build Smart-NULp-Ptr
Definition at line 205 of file smartptr.h.
|
inline |
build normal SmartPtr
by passing an object to a SmartPtr you loose the responsibility over the object to the SmartPtr. So you NEVER should free such an object manually.
p | Pointer to any dynamically allocated object |
Definition at line 215 of file smartptr.h.
destroy SmartPtr
object will not be destroyed as long as any other SmartPtr points to it
Definition at line 224 of file smartptr.h.
|
inline |
Definition at line 226 of file smartptr.h.
|
inline |
Definition at line 231 of file smartptr.h.
|
inline |
Definition at line 238 of file smartptr.h.
|
inline |
Definition at line 239 of file smartptr.h.
|
inline |
Definition at line 241 of file smartptr.h.
|
inline |
Definition at line 242 of file smartptr.h.
|
inline |
test if SmartPtr is not NULp
Definition at line 245 of file smartptr.h.
Referenced by aci_config_changed_cb(), ItemShader::active(), add_rule_cb(), AWT_get_translator(), bool_config_changed_cb(), buildColumnTranslatorFromAwars(), GB_test_shell_closed::close_global_shell(), compress_sequence_tree(), RootSynchronizer::deconstructionPhase(), del_rule_cb(), di_calculate_matrix(), di_calculate_tree_cb(), di_recalc_matrix(), export_format_single(), RootSynchronizer::find_best_root_candidate(), TargetGroup::get_clade(), TargetGroup::get_group(), TargetGroup::get_keeledStateInfo(), getSelectedRule(), GroupSearch::has_results(), SmartPtr< PS_Node >::isNull(), lintRuleset(), lintRulesetOnce(), matrix_config_changed_cb(), matrix_gui_changed_cb(), overwriteSelectedRule(), GroupSearch::perform_search(), ArbImporter::read_data(), rebuild_rule_from_awars_cb(), SmartPtr< PS_Node >::references(), refresh_available_fields_from_ruleset(), refresh_rule_selection_box_cb(), FieldTransfer::RuleSet::replace(), rule_stack_cb(), selected_rule_changed_cb(), ViaFtsTransporter::transferOne(), translate_config_changed_cb(), SearchedTree::tree_is_loaded(), update_cb(), and AP_tree::update_subtree_information().
|
inline |
test if SmartPtr is NULp
Definition at line 248 of file smartptr.h.
Referenced by BaseCounter::addLine(), PS_Candidate::alreadyUsedNode(), awt_create_input_mask(), AWT_get_translator(), AWT_initialize_input_mask(), di_calculate_tree_cb(), ED4_get_aligner_data_access(), RootSynchronizer::find_good_roots_for_trees(), QueriedGroups::get_column_widths(), GroupSearch::get_results(), GroupInfo::get_word_count(), Importer::getUnwrappedFeatureTableLine(), group_clusters(), awt_mask_item::has_name(), GroupUIdata::initialize(), keepQuery(), main(), DupNameCriterion::name_matches_wordwise(), SortClusterIDsBy::operator()(), operator==(), Importer::parseFeature(), Importer::parseFeatureTable(), GroupSearch::perform_search(), PS_Candidate::print(), PS_Candidate::printProbes(), PS_get_node_paths(), GroupSearch::refresh_results_after_DBchanges(), TopologyShader::shade(), ConvertibleData::to_embl(), ConvertibleData::to_genbank(), ConvertibleData::to_macke(), update_example(), and with_affected_clusters_do().
|
inline |
set SmartPtr to NULp
Definition at line 251 of file smartptr.h.
Referenced by TopologyShader::activate(), awt_create_input_mask(), AWT_get_translator(), buildColumnTranslatorFromAwars(), GroupUIdata::cleanup(), GB_test_shell_closed::close_global_shell(), ED4_root::create_hierarchy(), destroy_TreeAwarRegistry(), destroyKeptQueries(), di_calculate_tree_cb(), SearchedTree::flush_loaded_tree(), GroupSearch::forgetDupCriteria(), LazyPersistantFlag::get_lazy_again(), FieldTransfer::RuleSet::loadFrom(), main(), FieldTransfer::Rule::makeFromConfig(), PS_Candidate::PS_Candidate(), FINAL_TYPE< SEQTYPE >::PS_Database(), awt_mask_item::remove_name(), ItemFieldShader::setup_changed_cb(), TopologyShader::tree_changed_cb(), TargetGroup::unAim(), and FINAL_TYPE< SEQTYPE >::~PS_Database().
|
inline |
set SmartPtr to new content or NULp
Definition at line 254 of file smartptr.h.
|
inline |
convert SmartPtr to plain old pointer (also works if isNull())
Definition at line 263 of file smartptr.h.
Referenced by ED4_get_aligner_data_access(), and SetVariables::get().
|
inline |
create a deep copy of the object pointed to by the smart pointer.
Afterwards there exist two equal copies of the object.
Definition at line 267 of file smartptr.h.
|
inline |
test if two SmartPtrs point to the same object
(this is used for operators == and !=).
if you like to compare the objects themselves use (*smart_ptr1 == *smart_ptr2)
Definition at line 277 of file smartptr.h.
Referenced by operator!=(), and operator==().
|
inline |
Definition at line 292 of file smartptr.h.