pl-nk v0.4.5
Plonk|Plink|Plank are a set of cross-platform C/C++ frameworks for audio software development
Friends
SmartPointer Class Reference

Reference counted pointer base class. More...

Inherits PlonkBase.

Inherited by AudioFileReaderInternal, AudioFileWriterInternalBase< SampleType >, AudioFileWriterInternalBase< Char >, AudioFileWriterInternalBase< Double >, AudioFileWriterInternalBase< Float >, AudioFileWriterInternalBase< Int >, AudioFileWriterInternalBase< Int24 >, AudioFileWriterInternalBase< Short >, Base64Internal, BinaryFileInternal, BusBufferInternal< SampleType >, DictionaryInternal< ValueType, KeyType >, DynamicInternal, FFTEngineInternal< float >, FilePathInternal, FunctionCallerInternal< FunctionType, ReturnType, ArgType1, ArgType2, ArgType3 >, FunctionCallerInternal< FunctionType, ReturnType >, FunctionCallerInternal< FunctionType, ReturnType, ArgType1 >, FunctionCallerInternal< FunctionType, ReturnType, ArgType1, ArgType2 >, FunctionProxyCallerInternal< FunctionType, ReturnType, ArgType1, ArgType2, ArgType3 >, FunctionProxyCallerInternal< FunctionType, ReturnType >, FunctionProxyCallerInternal< FunctionType, ReturnType, ArgType1 >, FunctionProxyCallerInternal< FunctionType, ReturnType, ArgType1, ArgType2 >, LockedValueInternal< ValueType >, LockFreeQueueInternal< ValueType >, LockFreeQueueInternal< ValueType * >, LockFreeStackInternal< ValueType >, LockFreeStackInternal< ValueType * >, LockInternalBase, NeuralNetworkInternal< ValueType >, NeuralNetworkInternal< float >, RNGInternal, SenderInternal< SenderContainerBaseType >, SenderInternal< BreakpointBase< SampleType > >, SenderInternal< BreakpointsBase< SampleType > >, SenderInternal< ChannelBase< FormType::SampleDataType > >, SenderInternal< ChannelBase< OutputSampleType > >, SenderInternal< ChannelBase< SampleType > >, SenderInternal< ChannelBase< ShapeType::SampleDataType > >, SenderInternal< ProcessInfo >, SenderInternal< Variable< Type > >, SignalInternal< SampleType >, SimpleLinkedListInternal< ValueType >, SimpleLinkedListInternal< ValueType * >, SimpleQueueInternal< ValueType >, SimpleQueueInternal< ValueType * >, SimpleStackInternal< ValueType >, SimpleStackInternal< ValueType * >, TaskBufferInternal< SampleType >, TaskMessageInternal, TextFileInternal, VariableInternal< Type & >, WeakPointer, and ZipInternal.

List of all members.

Public Member Functions

Construction and destruction
 SmartPointer (const bool allocateWeakPointer=true) throw ()
virtual ~SmartPointer ()
void incrementRefCount () throw ()
void decrementRefCount () throw ()
Miscellaneous
void * getWeak () const throw ()
int getRefCount () const throw ()
virtual SmartPointerdeepCopy () const throw ()

Friends

class WeakPointer

Detailed Description

Reference counted pointer base class.

One of the most important classes. In fact on the internal side of things this perhaps is the most important class. It handles reference counting of all internal objects allocated using the new operator. The object deletes itself when its reference count reaches zero. This helps manage object lifetimes especially with dynamically allocated audio components. A 'weak' version of this pointer can also be obtained which will not affect the reference count but will get set to 0 when its SmartPointer peer is deleted.

See also:
WeakPointer, SmartPointerContainer

The documentation for this class was generated from the following files:
 All Classes Functions Typedefs Enumerations Enumerator Properties