Files
loongoffice/include/tools/UniqueID.hxx
Tomaž Vajngerl 02c91f82c2 move UniqueID to tools and rework to increase counter in constructor
In the tools module it can be used in more other modules.

Changed the instantiation to increase the counter already in the
constructor, so no need to check if the ID is 0.

Also test for UniqueID

Change-Id: I77c80461875c69496a7e218534d16d6550c168c2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170061
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-07-07 09:41:02 +02:00

35 lines
816 B
C++

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#pragma once
#include <sal/types.h>
#include <tools/toolsdllapi.h>
/** Unique ID for an object.
*
* Generates a unique ID and stores it in a member variable, so the ID returned
* by getId() is the same as long as the object is alive.
*
* ID numbers start with 1.
*
*/
class TOOLS_DLLPUBLIC UniqueID final
{
private:
sal_uInt64 mnID;
public:
UniqueID();
sal_uInt64 getID() const { return mnID; }
};
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */