kwave  18.07.70
Kwave::MetaData::MetaDataPriv Class Reference
Inheritance diagram for Kwave::MetaData::MetaDataPriv:
Inheritance graph
Collaboration diagram for Kwave::MetaData::MetaDataPriv:
Collaboration graph

Public Member Functions

 MetaDataPriv ()
 
 MetaDataPriv (const MetaDataPriv &other)
 
virtual ~MetaDataPriv ()
 

Public Attributes

QString m_id
 
Scope m_scope
 
PropertyList m_properties
 

Static Private Member Functions

static QString newUid ()
 

Static Private Attributes

static quint64 m_id_counter = 0
 
static QMutex m_id_lock
 

Detailed Description

internal container class with meta data

Definition at line 215 of file MetaData.h.

Constructor & Destructor Documentation

◆ MetaDataPriv() [1/2]

Kwave::MetaData::MetaDataPriv::MetaDataPriv ( )

constructor

Definition at line 280 of file MetaData.cpp.

281  :QSharedData(),
282  m_id(newUid()),
283  m_scope(),
284  m_properties()
285 {
286 }

◆ MetaDataPriv() [2/2]

Kwave::MetaData::MetaDataPriv::MetaDataPriv ( const MetaDataPriv other)

copy constructor

Definition at line 289 of file MetaData.cpp.

290  :QSharedData(),
291  m_id(other.m_id),
292  m_scope(other.m_scope),
293  m_properties(other.m_properties)
294 {
295 }

◆ ~MetaDataPriv()

Kwave::MetaData::MetaDataPriv::~MetaDataPriv ( )
virtual

destructor

Definition at line 298 of file MetaData.cpp.

299 {
300 }

Member Function Documentation

◆ newUid()

QString Kwave::MetaData::MetaDataPriv::newUid ( )
staticprivate

creates a new unique ID

Definition at line 303 of file MetaData.cpp.

References _, m_id_counter, and m_id_lock.

304 {
305  // create a new unique ID:
306  // <64 bit number> - <date/time> - <session id> - <pseudo uuid from Qt>
307  QMutexLocker _lock(&m_id_lock);
308 
309  QString uid;
310 
311  uid += QString::number(++m_id_counter, 16);
312  uid += _("-");
313  uid += QDateTime::currentDateTime().toString(Qt::ISODate);
314  uid += _("-");
315  uid += qApp->sessionKey();
316  uid += _("-");
317  uid += QUuid::createUuid().toString();
318 
319  return uid;
320 }
static quint64 m_id_counter
Definition: MetaData.h:243
#define _(m)
Definition: memcpy.c:66

Member Data Documentation

◆ m_id

QString Kwave::MetaData::MetaDataPriv::m_id

id of the meta data

Definition at line 229 of file MetaData.h.

◆ m_id_counter

quint64 Kwave::MetaData::MetaDataPriv::m_id_counter = 0
staticprivate

counter for unique id generation

static initializer: counter for unique id generation

Definition at line 243 of file MetaData.h.

Referenced by Kwave::MetaData::dump(), and newUid().

◆ m_id_lock

QMutex Kwave::MetaData::MetaDataPriv::m_id_lock
staticprivate

mutex for protecting the id generator

static initializer: mutex for protecting the id generator

Definition at line 246 of file MetaData.h.

Referenced by Kwave::MetaData::dump(), and newUid().

◆ m_properties

PropertyList Kwave::MetaData::MetaDataPriv::m_properties

list of properties, user defined

Definition at line 235 of file MetaData.h.

◆ m_scope

Scope Kwave::MetaData::MetaDataPriv::m_scope

scope of the meta data

Definition at line 232 of file MetaData.h.


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