before formatting
This commit is contained in:
@@ -25,16 +25,16 @@
|
||||
struct PIP_EXPORT PIIntrospectionContainersType {
|
||||
~PIIntrospectionContainersType();
|
||||
void finish();
|
||||
uint id = 0;
|
||||
const char * name = nullptr;
|
||||
uint id = 0;
|
||||
const char * name = nullptr;
|
||||
const char * demangled = "?";
|
||||
bool inited = false;
|
||||
bool has_demangled = false;
|
||||
bool inited = false;
|
||||
bool has_demangled = false;
|
||||
};
|
||||
|
||||
#if defined(PIP_INTROSPECTION) && !defined(PIP_FORCE_NO_PIINTROSPECTION)
|
||||
|
||||
#include "piintrospection_base.h"
|
||||
# include "piintrospection_base.h"
|
||||
|
||||
class PIIntrospectionContainers;
|
||||
|
||||
@@ -45,6 +45,7 @@ public:
|
||||
static PIIntrospectionContainersType ret = create();
|
||||
return ret;
|
||||
}
|
||||
|
||||
private:
|
||||
static PIIntrospectionContainersType create() {
|
||||
PIIntrospectionContainersType ret;
|
||||
@@ -54,35 +55,39 @@ private:
|
||||
}
|
||||
};
|
||||
|
||||
#define PIINTROSPECTION_CONTAINERS (PIIntrospectionContainersInterface::instance())
|
||||
# define PIINTROSPECTION_CONTAINERS (PIIntrospectionContainersInterface::instance())
|
||||
|
||||
# define PIINTROSPECTION_CONTAINER_NEW(t, isz) PIINTROSPECTION_CONTAINERS->containerNew (PIIntrospectionContainersTypeInfo<t>::get(), isz);
|
||||
# define PIINTROSPECTION_CONTAINER_DELETE(t) PIINTROSPECTION_CONTAINERS->containerDelete(PIIntrospectionContainersTypeInfo<t>::get());
|
||||
# define PIINTROSPECTION_CONTAINER_ALLOC(t, cnt) PIINTROSPECTION_CONTAINERS->containerAlloc (PIIntrospectionContainersTypeInfo<t>::get(), cnt);
|
||||
# define PIINTROSPECTION_CONTAINER_FREE(t, cnt) PIINTROSPECTION_CONTAINERS->containerFree (PIIntrospectionContainersTypeInfo<t>::get(), cnt);
|
||||
# define PIINTROSPECTION_CONTAINER_USED(t, cnt) PIINTROSPECTION_CONTAINERS->containerUsed (PIIntrospectionContainersTypeInfo<t>::get(), cnt);
|
||||
# define PIINTROSPECTION_CONTAINER_UNUSED(t, cnt) PIINTROSPECTION_CONTAINERS->containerUnused(PIIntrospectionContainersTypeInfo<t>::get(), cnt);
|
||||
// clang-format off
|
||||
# define PIINTROSPECTION_CONTAINER_NEW (t, isz) PIINTROSPECTION_CONTAINERS->containerNew (PIIntrospectionContainersTypeInfo<t>::get(), isz);
|
||||
# define PIINTROSPECTION_CONTAINER_DELETE(t ) PIINTROSPECTION_CONTAINERS->containerDelete(PIIntrospectionContainersTypeInfo<t>::get() );
|
||||
# define PIINTROSPECTION_CONTAINER_ALLOC (t, cnt) PIINTROSPECTION_CONTAINERS->containerAlloc (PIIntrospectionContainersTypeInfo<t>::get(), cnt);
|
||||
# define PIINTROSPECTION_CONTAINER_FREE (t, cnt) PIINTROSPECTION_CONTAINERS->containerFree (PIIntrospectionContainersTypeInfo<t>::get(), cnt);
|
||||
# define PIINTROSPECTION_CONTAINER_USED (t, cnt) PIINTROSPECTION_CONTAINERS->containerUsed (PIIntrospectionContainersTypeInfo<t>::get(), cnt);
|
||||
# define PIINTROSPECTION_CONTAINER_UNUSED(t, cnt) PIINTROSPECTION_CONTAINERS->containerUnused(PIIntrospectionContainersTypeInfo<t>::get(), cnt);
|
||||
// clang-format on
|
||||
|
||||
|
||||
class PIP_EXPORT PIIntrospectionContainersInterface {
|
||||
friend class PIIntrospection;
|
||||
friend class PIIntrospectionServer;
|
||||
|
||||
public:
|
||||
__PIINTROSPECTION_SINGLETON_H__(Containers)
|
||||
|
||||
// clang-format off
|
||||
void containerNew (const PIIntrospectionContainersType & ti, uint isz);
|
||||
void containerDelete(const PIIntrospectionContainersType & ti);
|
||||
void containerAlloc (const PIIntrospectionContainersType & ti, ullong cnt);
|
||||
void containerFree (const PIIntrospectionContainersType & ti, ullong cnt);
|
||||
void containerUsed (const PIIntrospectionContainersType & ti, ullong cnt);
|
||||
void containerUnused(const PIIntrospectionContainersType & ti, ullong cnt);
|
||||
// clang-format on
|
||||
|
||||
PIIntrospectionContainers * p;
|
||||
|
||||
private:
|
||||
PIIntrospectionContainersInterface();
|
||||
~PIIntrospectionContainersInterface();
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -96,5 +101,4 @@ private:
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#endif // PIINTROSPECTION_CONTAINERS_H
|
||||
|
||||
@@ -20,10 +20,12 @@
|
||||
#ifndef PIINTROSPECTION_CONTAINERS_P_H
|
||||
#define PIINTROSPECTION_CONTAINERS_P_H
|
||||
|
||||
#include "piintrospection_containers.h"
|
||||
#include "pispinlock.h"
|
||||
#include "pistring.h"
|
||||
|
||||
#include <map>
|
||||
#include <string>
|
||||
#include "picrc.h"
|
||||
|
||||
|
||||
class PIP_EXPORT PIIntrospectionContainers {
|
||||
@@ -32,28 +34,30 @@ public:
|
||||
|
||||
struct TypeInfo;
|
||||
|
||||
// clang-format off
|
||||
void containerNew (const PIIntrospectionContainersType & ti, uint isz);
|
||||
void containerDelete(const PIIntrospectionContainersType & ti);
|
||||
void containerAlloc (const PIIntrospectionContainersType & ti, ullong cnt);
|
||||
void containerFree (const PIIntrospectionContainersType & ti, ullong cnt);
|
||||
void containerUsed (const PIIntrospectionContainersType & ti, ullong cnt);
|
||||
void containerUnused(const PIIntrospectionContainersType & ti, ullong cnt);
|
||||
// clang-format on
|
||||
|
||||
PIVector<TypeInfo> getInfo() const;
|
||||
|
||||
#pragma pack(push, 1)
|
||||
struct PIP_EXPORT _Type {
|
||||
uint id = 0u;
|
||||
uint count = 0u;
|
||||
uint item_size = 0u;
|
||||
uint id = 0u;
|
||||
uint count = 0u;
|
||||
uint item_size = 0u;
|
||||
ullong allocated = 0u;
|
||||
ullong used = 0u;
|
||||
ullong used = 0u;
|
||||
};
|
||||
#pragma pack(pop)
|
||||
|
||||
struct PIP_EXPORT TypeInfo: _Type {
|
||||
ullong allocated_bytes = 0u;
|
||||
ullong used_bytes = 0u;
|
||||
ullong used_bytes = 0u;
|
||||
PIString name;
|
||||
PIString item_size_str;
|
||||
PIString allocated_str;
|
||||
|
||||
@@ -22,25 +22,29 @@
|
||||
|
||||
#if defined(PIP_INTROSPECTION) && !defined(PIP_FORCE_NO_PIINTROSPECTION)
|
||||
|
||||
#include "piintrospection_base.h"
|
||||
# include "piintrospection_base.h"
|
||||
|
||||
class PIIntrospectionThreads;
|
||||
|
||||
#define PIINTROSPECTION_THREADS (PIIntrospectionThreadsInterface::instance())
|
||||
# define PIINTROSPECTION_THREADS (PIIntrospectionThreadsInterface::instance())
|
||||
|
||||
# define PIINTROSPECTION_THREAD_NEW(t) PIINTROSPECTION_THREADS->threadNew (t);
|
||||
# define PIINTROSPECTION_THREAD_DELETE(t) PIINTROSPECTION_THREADS->threadDelete (t);
|
||||
# define PIINTROSPECTION_THREAD_START(t) PIINTROSPECTION_THREADS->threadStart (t);
|
||||
# define PIINTROSPECTION_THREAD_RUN(t) PIINTROSPECTION_THREADS->threadRun (t);
|
||||
# define PIINTROSPECTION_THREAD_WAIT(t) PIINTROSPECTION_THREADS->threadWait (t);
|
||||
# define PIINTROSPECTION_THREAD_STOP(t) PIINTROSPECTION_THREADS->threadStop (t);
|
||||
# define PIINTROSPECTION_THREAD_RUN_DONE(t,us) PIINTROSPECTION_THREADS->threadRunDone(t,us);
|
||||
// clang-format off
|
||||
# define PIINTROSPECTION_THREAD_NEW (t ) PIINTROSPECTION_THREADS->threadNew (t );
|
||||
# define PIINTROSPECTION_THREAD_DELETE (t ) PIINTROSPECTION_THREADS->threadDelete (t );
|
||||
# define PIINTROSPECTION_THREAD_START (t ) PIINTROSPECTION_THREADS->threadStart (t );
|
||||
# define PIINTROSPECTION_THREAD_RUN (t ) PIINTROSPECTION_THREADS->threadRun (t );
|
||||
# define PIINTROSPECTION_THREAD_WAIT (t ) PIINTROSPECTION_THREADS->threadWait (t );
|
||||
# define PIINTROSPECTION_THREAD_STOP (t ) PIINTROSPECTION_THREADS->threadStop (t );
|
||||
# define PIINTROSPECTION_THREAD_RUN_DONE(t,us) PIINTROSPECTION_THREADS->threadRunDone(t,us);
|
||||
// clang-format on
|
||||
|
||||
class PIP_EXPORT PIIntrospectionThreadsInterface {
|
||||
friend class PIIntrospection;
|
||||
|
||||
public:
|
||||
__PIINTROSPECTION_SINGLETON_H__(Threads)
|
||||
|
||||
// clang-format off
|
||||
void threadNew (PIThread * t);
|
||||
void threadDelete (PIThread * t);
|
||||
void threadStart (PIThread * t);
|
||||
@@ -48,13 +52,13 @@ public:
|
||||
void threadWait (PIThread * t);
|
||||
void threadStop (PIThread * t);
|
||||
void threadRunDone(PIThread * t, ullong us);
|
||||
// clang-format on
|
||||
|
||||
private:
|
||||
PIIntrospectionThreadsInterface();
|
||||
~PIIntrospectionThreadsInterface();
|
||||
|
||||
PIIntrospectionThreads * p;
|
||||
|
||||
};
|
||||
|
||||
#else
|
||||
@@ -64,7 +68,7 @@ private:
|
||||
# define PIINTROSPECTION_THREAD_RUN(t)
|
||||
# define PIINTROSPECTION_THREAD_WAIT(t)
|
||||
# define PIINTROSPECTION_THREAD_STOP(t)
|
||||
# define PIINTROSPECTION_THREAD_RUN_DONE(t,us)
|
||||
# define PIINTROSPECTION_THREAD_RUN_DONE(t, us)
|
||||
#endif
|
||||
|
||||
#endif // PIINTROSPECTION_THREADS_H
|
||||
|
||||
@@ -44,6 +44,7 @@ public:
|
||||
ullong run_us, run_count;
|
||||
};
|
||||
|
||||
// clang-format off
|
||||
void threadNew (PIThread * t);
|
||||
void threadDelete (PIThread * t);
|
||||
void threadStart (PIThread * t);
|
||||
@@ -51,10 +52,10 @@ public:
|
||||
void threadWait (PIThread * t);
|
||||
void threadStop (PIThread * t);
|
||||
void threadRunDone(PIThread * t, ullong us);
|
||||
// clang-format on
|
||||
|
||||
PIMap<PIThread*, ThreadInfo> threads;
|
||||
PIMap<PIThread *, ThreadInfo> threads;
|
||||
PIMutex mutex;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user