AGX Dynamics 2.42.3.0
Loading...
Searching...
No Matches
ThreadTimelineEntryEntity.h
Go to the documentation of this file.
1/*
2Copyright 2007-2025. Algoryx Simulation AB.
3
4All AGX source code, intellectual property, documentation, sample code,
5tutorials, scene files and technical white papers, are copyrighted, proprietary
6and confidential material of Algoryx Simulation AB. You may not download, read,
7store, distribute, publish, copy or otherwise disseminate, use or expose this
8material unless having a written signed agreement with Algoryx Simulation AB, or
9having been advised so by Algoryx Simulation AB for a time limited evaluation,
10or having purchased a valid commercial license from Algoryx Simulation AB.
11
12Algoryx Simulation AB disclaims all responsibilities for loss or damage caused
13from using this software, unless otherwise stated in written agreements with
14Algoryx Simulation AB.
15*/
16
18// AUTOMATICALLY GENERATED ENTITY, DO NOT EDIT! //
20
21#ifndef GENERATED_AGX_THREADTIMELINEENTRY_H_PLUGIN
22#define GENERATED_AGX_THREADTIMELINEENTRY_H_PLUGIN
23
24#define AGX_ENTITY_WRAPPER 1
25
26
27#ifdef _MSC_VER
28# pragma warning(push)
29// warning C4505: 'agxData::VectorAttributeT<T>::print' : unreferenced local function has been removed
30# pragma warning( disable : 4505 )
31// warning C4251: 'X' : class 'Y' needs to have dll-interface to be used by clients of class 'Z'
32# pragma warning( disable : 4251 )
33// warning C4355: 'this' : used in base member initializer list
34# pragma warning( disable : 4355 )
35// marked as __forceinline not inlined
36# pragma warning( disable: 4714 )
37#endif
38
39#include <agxData/EntityModel.h>
41#include <agxData/EntityRef.h>
42#include <agxData/EntityPtr.h>
44#include <agx/Integer.h>
45#include <agx/Real.h>
46#include <agx/macros.h>
47#include <agx/Integer.h>
48#include <agx/Real.h>
49#include <agx/String.h>
50
51
52namespace agx
53{
54
55 class ThreadTimelineEntryModel;
56 class ThreadTimelineEntryData;
57 class ThreadTimelineEntryPtr;
58 class ThreadTimelineEntryInstance;
59 class ThreadTimelineEntrySemantics;
60
61
63
68 {
69 public:
71
72 ThreadTimelineEntryModel(const agx::String& name = "ThreadTimelineEntry");
73
76
79
82
84 virtual void shutdownCleanup() override;
85
86
87
88 /* Attributes */
101
102 protected:
104 virtual agxData::EntityData* createData(agxData::EntityStorage* storage) override;
105 virtual void configure(agx::TiXmlElement* eEntity) override;
106 virtual void initAttributeAccessors() override;
107 virtual void construct(agxData::EntityPtr instance) override;
108 void construct(agx::ThreadTimelineEntryPtr threadTimelineEntry);
109 };
110
111
113 #ifndef AGX_THREADTIMELINEENTRY_DATA_SET_OVERRIDE
114 #define AGX_THREADTIMELINEENTRY_DATA_SET
115 class AGXCORE_EXPORT ThreadTimelineEntryData : public agxData::EntityData
116 {
117 public:
118 ThreadTimelineEntryInstance operator[] (size_t index);
119
120 public:
123 agxData::Array< agx::Real64 > startTimeGlobal;
124 agxData::Array< agx::Real64 > endTimeGlobal;
125 agxData::Array< agx::Real64 > startTimeFrame;
132 agxData::Array< agx::String > extraDataTitle;
134
135 public:
136 typedef agx::UInt32 taskIdType;
137 typedef agx::Real64 startTimeGlobalType;
138 typedef agx::Real64 endTimeGlobalType;
139 typedef agx::Real64 startTimeFrameType;
140 typedef agx::Real64 endTimeFrameType;
141 typedef agx::String descriptionType;
142 typedef agx::UInt32 costEstimateType;
143 typedef agx::UInt32 poolSizeType;
144 typedef agx::UInt8 jobTypeType;
145 typedef agx::UInt64 jobPtrType;
146 typedef agx::String extraDataTitleType;
147 typedef agx::Real64 extraDataType;
148
149 public:
150 ThreadTimelineEntryData(agxData::EntityStorage* storage);
151 ThreadTimelineEntryData();
152
153 protected:
154 virtual ~ThreadTimelineEntryData() {}
155 virtual void setNumElements(agx::Index numElements) override;
156
157 private:
158 ThreadTimelineEntryData& operator= (const ThreadTimelineEntryData&) { return *this; }
159
160 };
161 #endif
163
164
166 class AGXCORE_EXPORT ThreadTimelineEntrySemantics : protected agxData::EntityPtr
167 {
168 public:
169
170 // Automatic getters
171 agx::UInt32 const& getTaskId() const;
172 agx::Real64 const& getStartTimeGlobal() const;
173 agx::Real64 const& getEndTimeGlobal() const;
174 agx::Real64 const& getStartTimeFrame() const;
175 agx::Real64 const& getEndTimeFrame() const;
176 agx::String const& getDescription() const;
177 agx::UInt32 const& getCostEstimate() const;
178 agx::UInt32 const& getPoolSize() const;
179 agx::UInt8 const& getJobType() const;
180 agx::UInt64 const& getJobPtr() const;
181 agx::String const& getExtraDataTitle() const;
182 agx::Real64 const& getExtraData() const;
183
184 // Semantics defined by explicit kernels
185
186 // Automatic setters
187 void setTaskId(agx::UInt32 const& value);
188 void setStartTimeGlobal(agx::Real64 const& value);
189 void setEndTimeGlobal(agx::Real64 const& value);
190 void setStartTimeFrame(agx::Real64 const& value);
191 void setEndTimeFrame(agx::Real64 const& value);
192 void setDescription(agx::String const& value);
193 void setCostEstimate(agx::UInt32 const& value);
194 void setPoolSize(agx::UInt32 const& value);
195 void setJobType(agx::UInt8 const& value);
196 void setJobPtr(agx::UInt64 const& value);
197 void setExtraDataTitle(agx::String const& value);
198 void setExtraData(agx::Real64 const& value);
199
200
201 protected:
202 friend class ThreadTimelineEntryPtr;
203 friend class ThreadTimelineEntryInstance;
204 ThreadTimelineEntrySemantics();
205 };
207
208
209
212 class CALLABLE ThreadTimelineEntryPtr : public agxData::EntityPtr
213 {
214 public:
216 typedef ThreadTimelineEntryData DataType;
217 typedef ThreadTimelineEntryInstance InstanceType;
218
219 public:
226 AGXCORE_EXPORT ThreadTimelineEntryInstance instance();
227 AGXCORE_EXPORT const ThreadTimelineEntryInstance instance() const;
228
229 AGXCORE_EXPORT ThreadTimelineEntrySemantics* operator->();
230 AGXCORE_EXPORT const ThreadTimelineEntrySemantics* operator->() const;
231
232 ThreadTimelineEntryData* getData();
233 const ThreadTimelineEntryData* getData() const;
234
235
240
245
250
255
260
265
270
275
280
285
290
295
296 };
297
298
300 class AGXCORE_EXPORT ThreadTimelineEntryInstance : public agxData::EntityInstance
301 {
302 public:
303 ThreadTimelineEntryInstance();
304 ThreadTimelineEntryInstance(ThreadTimelineEntryData* data, agx::Index index);
305 ThreadTimelineEntryInstance(agxData::EntityStorage *storage, agx::Index index);
306 ThreadTimelineEntryInstance(const agxData::EntityInstance& other);
307 ThreadTimelineEntryInstance(const agxData::EntityPtr& ptr);
308
309 ThreadTimelineEntryData* getData();
310 const ThreadTimelineEntryData* getData() const;
311
312 public:
314 agx::UInt32& taskId();
316 agx::UInt32 const& taskId() const;
317
319 agx::Real64& startTimeGlobal();
321 agx::Real64 const& startTimeGlobal() const;
322
324 agx::Real64& endTimeGlobal();
326 agx::Real64 const& endTimeGlobal() const;
327
329 agx::Real64& startTimeFrame();
331 agx::Real64 const& startTimeFrame() const;
332
334 agx::Real64& endTimeFrame();
336 agx::Real64 const& endTimeFrame() const;
337
339 agx::String& description();
341 agx::String const& description() const;
342
344 agx::UInt32& costEstimate();
346 agx::UInt32 const& costEstimate() const;
347
349 agx::UInt32& poolSize();
351 agx::UInt32 const& poolSize() const;
352
354 agx::UInt8& jobType();
356 agx::UInt8 const& jobType() const;
357
359 agx::UInt64& jobPtr();
361 agx::UInt64 const& jobPtr() const;
362
364 agx::String& extraDataTitle();
366 agx::String const& extraDataTitle() const;
367
369 agx::Real64& extraData();
371 agx::Real64 const& extraData() const;
372
373 };
375
376
377
380
381
382
384 /* Implementation */
385 //-----------------------------------------------------------------------------------------------------
386 //-----------------------------------------------------------------------------------------------------
387 inline ThreadTimelineEntryInstance agx::ThreadTimelineEntryData::operator[] (size_t index) { return ThreadTimelineEntryInstance(this, (agx::Index)index); }
388 //-----------------------------------------------------------------------------------------------------
391 AGX_FORCE_INLINE ThreadTimelineEntryPtr::ThreadTimelineEntryPtr(const agxData::EntityPtr& ptr) : agxData::EntityPtr(ptr)
392 {
394 "Entity type mismatch. Storage contains entity data for type \'%s\', instance pointer is of type \'%s\'",
395 EntityPtr::getModel()->fullPath().c_str(), ThreadTimelineEntryModel::instance()->fullPath().c_str());
396 }
397
398 AGX_FORCE_INLINE ThreadTimelineEntryPtr::ThreadTimelineEntryPtr(const agxData::EntityInstance& instance) : agxData::EntityPtr(instance)
399 {
401 "Entity type mismatch. Storage contains entity data for type \'%s\', instance pointer is of type \'%s\'",
402 EntityPtr::getModel()->fullPath().c_str(), ThreadTimelineEntryModel::instance()->fullPath().c_str());
403 }
404
405 AGX_FORCE_INLINE ThreadTimelineEntryPtr& ThreadTimelineEntryPtr::operator= (const agxData::EntityPtr& ptr)
406 {
408 agxAssertN(!ptr || ptr.isInstanceOf(ThreadTimelineEntryModel::instance()),
409 "Entity type mismatch. Storage contains entity data for type \'%s\', instance pointer is of type \'%s\'",
410 EntityPtr::getModel()->fullPath().c_str(), ThreadTimelineEntryModel::instance()->fullPath().c_str());
411 return *this;
412 }
413
414 AGX_FORCE_INLINE ThreadTimelineEntryPtr& ThreadTimelineEntryPtr::operator= (const agxData::EntityInstance& instance)
415 {
417 agxAssertN(!instance || instance.isInstanceOf(ThreadTimelineEntryModel::instance()),
418 "Entity type mismatch. Storage contains entity data for type \'%s\', instance pointer is of type \'%s\'",
419 EntityPtr::getModel()->fullPath().c_str(), ThreadTimelineEntryModel::instance()->fullPath().c_str());
420 return *this;
421 }
422
423 inline ThreadTimelineEntryInstance ThreadTimelineEntryPtr::instance() { return agxData::EntityPtr::instance(); }
424 inline const ThreadTimelineEntryInstance ThreadTimelineEntryPtr::instance() const { return agxData::EntityPtr::instance(); }
425 AGX_FORCE_INLINE ThreadTimelineEntrySemantics* ThreadTimelineEntryPtr::operator->() { return (ThreadTimelineEntrySemantics* )this; }
426 AGX_FORCE_INLINE const ThreadTimelineEntrySemantics* ThreadTimelineEntryPtr::operator->() const { return (const ThreadTimelineEntrySemantics* )this; }
427 AGX_FORCE_INLINE ThreadTimelineEntryData* ThreadTimelineEntryPtr::getData() { return static_cast<ThreadTimelineEntryData* >(agxData::EntityPtr::getData()); }
428 AGX_FORCE_INLINE const ThreadTimelineEntryData* ThreadTimelineEntryPtr::getData() const { return static_cast<const ThreadTimelineEntryData* >(agxData::EntityPtr::getData()); }
429
430 AGX_FORCE_INLINE agx::UInt32& ThreadTimelineEntryPtr::taskId() { verifyIndex(); return getData()->taskId[calculateIndex()]; }
431 AGX_FORCE_INLINE agx::UInt32 const& ThreadTimelineEntryPtr::taskId() const { verifyIndex(); return getData()->taskId[calculateIndex()]; }
432
433 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryPtr::startTimeGlobal() { verifyIndex(); return getData()->startTimeGlobal[calculateIndex()]; }
434 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryPtr::startTimeGlobal() const { verifyIndex(); return getData()->startTimeGlobal[calculateIndex()]; }
435
436 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryPtr::endTimeGlobal() { verifyIndex(); return getData()->endTimeGlobal[calculateIndex()]; }
437 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryPtr::endTimeGlobal() const { verifyIndex(); return getData()->endTimeGlobal[calculateIndex()]; }
438
439 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryPtr::startTimeFrame() { verifyIndex(); return getData()->startTimeFrame[calculateIndex()]; }
440 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryPtr::startTimeFrame() const { verifyIndex(); return getData()->startTimeFrame[calculateIndex()]; }
441
442 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryPtr::endTimeFrame() { verifyIndex(); return getData()->endTimeFrame[calculateIndex()]; }
443 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryPtr::endTimeFrame() const { verifyIndex(); return getData()->endTimeFrame[calculateIndex()]; }
444
445 AGX_FORCE_INLINE agx::String& ThreadTimelineEntryPtr::description() { verifyIndex(); return getData()->description[calculateIndex()]; }
446 AGX_FORCE_INLINE agx::String const& ThreadTimelineEntryPtr::description() const { verifyIndex(); return getData()->description[calculateIndex()]; }
447
448 AGX_FORCE_INLINE agx::UInt32& ThreadTimelineEntryPtr::costEstimate() { verifyIndex(); return getData()->costEstimate[calculateIndex()]; }
449 AGX_FORCE_INLINE agx::UInt32 const& ThreadTimelineEntryPtr::costEstimate() const { verifyIndex(); return getData()->costEstimate[calculateIndex()]; }
450
451 AGX_FORCE_INLINE agx::UInt32& ThreadTimelineEntryPtr::poolSize() { verifyIndex(); return getData()->poolSize[calculateIndex()]; }
452 AGX_FORCE_INLINE agx::UInt32 const& ThreadTimelineEntryPtr::poolSize() const { verifyIndex(); return getData()->poolSize[calculateIndex()]; }
453
454 AGX_FORCE_INLINE agx::UInt8& ThreadTimelineEntryPtr::jobType() { verifyIndex(); return getData()->jobType[calculateIndex()]; }
455 AGX_FORCE_INLINE agx::UInt8 const& ThreadTimelineEntryPtr::jobType() const { verifyIndex(); return getData()->jobType[calculateIndex()]; }
456
457 AGX_FORCE_INLINE agx::UInt64& ThreadTimelineEntryPtr::jobPtr() { verifyIndex(); return getData()->jobPtr[calculateIndex()]; }
458 AGX_FORCE_INLINE agx::UInt64 const& ThreadTimelineEntryPtr::jobPtr() const { verifyIndex(); return getData()->jobPtr[calculateIndex()]; }
459
460 AGX_FORCE_INLINE agx::String& ThreadTimelineEntryPtr::extraDataTitle() { verifyIndex(); return getData()->extraDataTitle[calculateIndex()]; }
461 AGX_FORCE_INLINE agx::String const& ThreadTimelineEntryPtr::extraDataTitle() const { verifyIndex(); return getData()->extraDataTitle[calculateIndex()]; }
462
463 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryPtr::extraData() { verifyIndex(); return getData()->extraData[calculateIndex()]; }
464 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryPtr::extraData() const { verifyIndex(); return getData()->extraData[calculateIndex()]; }
465
466 //-----------------------------------------------------------------------------------------------------
467 AGX_FORCE_INLINE ThreadTimelineEntryInstance::ThreadTimelineEntryInstance() {}
468 AGX_FORCE_INLINE ThreadTimelineEntryInstance::ThreadTimelineEntryInstance(ThreadTimelineEntryData* data, agx::Index index) : agxData::EntityInstance(data, index) {}
469 AGX_FORCE_INLINE ThreadTimelineEntryInstance::ThreadTimelineEntryInstance(agxData::EntityStorage* storage, agx::Index index) : agxData::EntityInstance(storage, index) {}
470 AGX_FORCE_INLINE ThreadTimelineEntryInstance::ThreadTimelineEntryInstance(const agxData::EntityInstance& other) : agxData::EntityInstance(other)
471 {
473 "Entity type mismatch. Storage contains entity data for type \'%s\', instance pointer is of type \'%s\'",
474 EntityInstance::getModel()->fullPath().c_str(), ThreadTimelineEntryModel::instance()->fullPath().c_str());
475 }
476
477 AGX_FORCE_INLINE ThreadTimelineEntryInstance::ThreadTimelineEntryInstance(const agxData::EntityPtr& ptr) : agxData::EntityInstance(ptr)
478 {
480 "Entity type mismatch. Storage contains entity data for type \'%s\', instance pointer is of type \'%s\'",
481 EntityInstance::getModel()->fullPath().c_str(), ThreadTimelineEntryModel::instance()->fullPath().c_str());
482 }
483
484
485 AGX_FORCE_INLINE ThreadTimelineEntryData* ThreadTimelineEntryInstance::getData() { return static_cast<ThreadTimelineEntryData* >(agxData::EntityInstance::getData()); }
486 AGX_FORCE_INLINE const ThreadTimelineEntryData* ThreadTimelineEntryInstance::getData() const { return static_cast<const ThreadTimelineEntryData* >(agxData::EntityInstance::getData()); }
487
488 AGX_FORCE_INLINE agx::UInt32& ThreadTimelineEntryInstance::taskId() { verifyIndex(); return getData()->taskId[getIndex()]; }
489 AGX_FORCE_INLINE agx::UInt32 const& ThreadTimelineEntryInstance::taskId() const { verifyIndex(); return getData()->taskId[getIndex()]; }
490
491 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryInstance::startTimeGlobal() { verifyIndex(); return getData()->startTimeGlobal[getIndex()]; }
492 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryInstance::startTimeGlobal() const { verifyIndex(); return getData()->startTimeGlobal[getIndex()]; }
493
494 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryInstance::endTimeGlobal() { verifyIndex(); return getData()->endTimeGlobal[getIndex()]; }
495 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryInstance::endTimeGlobal() const { verifyIndex(); return getData()->endTimeGlobal[getIndex()]; }
496
497 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryInstance::startTimeFrame() { verifyIndex(); return getData()->startTimeFrame[getIndex()]; }
498 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryInstance::startTimeFrame() const { verifyIndex(); return getData()->startTimeFrame[getIndex()]; }
499
500 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryInstance::endTimeFrame() { verifyIndex(); return getData()->endTimeFrame[getIndex()]; }
501 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryInstance::endTimeFrame() const { verifyIndex(); return getData()->endTimeFrame[getIndex()]; }
502
503 AGX_FORCE_INLINE agx::String& ThreadTimelineEntryInstance::description() { verifyIndex(); return getData()->description[getIndex()]; }
504 AGX_FORCE_INLINE agx::String const& ThreadTimelineEntryInstance::description() const { verifyIndex(); return getData()->description[getIndex()]; }
505
506 AGX_FORCE_INLINE agx::UInt32& ThreadTimelineEntryInstance::costEstimate() { verifyIndex(); return getData()->costEstimate[getIndex()]; }
507 AGX_FORCE_INLINE agx::UInt32 const& ThreadTimelineEntryInstance::costEstimate() const { verifyIndex(); return getData()->costEstimate[getIndex()]; }
508
509 AGX_FORCE_INLINE agx::UInt32& ThreadTimelineEntryInstance::poolSize() { verifyIndex(); return getData()->poolSize[getIndex()]; }
510 AGX_FORCE_INLINE agx::UInt32 const& ThreadTimelineEntryInstance::poolSize() const { verifyIndex(); return getData()->poolSize[getIndex()]; }
511
512 AGX_FORCE_INLINE agx::UInt8& ThreadTimelineEntryInstance::jobType() { verifyIndex(); return getData()->jobType[getIndex()]; }
513 AGX_FORCE_INLINE agx::UInt8 const& ThreadTimelineEntryInstance::jobType() const { verifyIndex(); return getData()->jobType[getIndex()]; }
514
515 AGX_FORCE_INLINE agx::UInt64& ThreadTimelineEntryInstance::jobPtr() { verifyIndex(); return getData()->jobPtr[getIndex()]; }
516 AGX_FORCE_INLINE agx::UInt64 const& ThreadTimelineEntryInstance::jobPtr() const { verifyIndex(); return getData()->jobPtr[getIndex()]; }
517
518 AGX_FORCE_INLINE agx::String& ThreadTimelineEntryInstance::extraDataTitle() { verifyIndex(); return getData()->extraDataTitle[getIndex()]; }
519 AGX_FORCE_INLINE agx::String const& ThreadTimelineEntryInstance::extraDataTitle() const { verifyIndex(); return getData()->extraDataTitle[getIndex()]; }
520
521 AGX_FORCE_INLINE agx::Real64& ThreadTimelineEntryInstance::extraData() { verifyIndex(); return getData()->extraData[getIndex()]; }
522 AGX_FORCE_INLINE agx::Real64 const& ThreadTimelineEntryInstance::extraData() const { verifyIndex(); return getData()->extraData[getIndex()]; }
523
524 //-----------------------------------------------------------------------------------------------------
525 AGX_FORCE_INLINE ThreadTimelineEntrySemantics::ThreadTimelineEntrySemantics() {}
526 //-----------------------------------------------------------------------------------------------------
528}
529
530AGX_TYPE_BINDING(agx::ThreadTimelineEntryPtr, "ThreadTimelineEntryPtr")
531AGX_TYPE_BINDING(agx::ThreadTimelineEntryInstance, "ThreadTimelineEntryInstance")
532
533#ifdef _MSC_VER
534# pragma warning(pop)
535#endif
536
537#undef AGX_ENTITY_WRAPPER
538#undef AGX_ENTITY_NAMESPACE
539#endif
540
#define AGX_DECLARE_POINTER_TYPES(type)
Definition: Referenced.h:254
#define AGX_TYPE_BINDING(_Type, _Name)
Definition: Type.h:179
#define AGXCORE_EXPORT
Type-specific Array used for fast access into the data held by a Buffer.
Definition: Array.h:107
Entity instance provides access to a single instance in an EntityStorage.
bool isInstanceOf(agxData::EntityModel *model) const
agxData::EntityData * getData()
An abstract description of a data entity stored using SOA (structure of arrays) pattern in a EntitySt...
Definition: EntityModel.h:64
Accessor to a entity instance stored in a EntityStorage, to allow SOA (structure of arrays) data to b...
Definition: EntityPtr.h:52
EntityPtr & operator=(const EntityPtr &other)=default
bool isInstanceOf(agxData::EntityModel *model) const
agxData::EntityData * getData()
agxData::EntityInstance instance()
Definition: EntityPtr.h:269
Data storage for a collection of entity instances of a specified EntityModel.
Definition: EntityStorage.h:73
agx::String fullPath() const
Abstract description of the data attributes for the ThreadTimelineEntry entity.
virtual void shutdownCleanup() override
This is part of internal cleanup and should not be called by users.
static agxData::ScalarAttributeT< agx::Real64 > * endTimeFrameAttribute
virtual void initAttributeAccessors() override
virtual void construct(agxData::EntityPtr instance) override
static agxData::ScalarAttributeT< agx::UInt64 > * jobPtrAttribute
static agxData::ScalarAttributeT< agx::Real64 > * endTimeGlobalAttribute
static agxData::EntityStorage * defaultStorage()
static agxData::ScalarAttributeT< agx::UInt32 > * poolSizeAttribute
virtual agxData::EntityData * createData(agxData::EntityStorage *storage) override
static ThreadTimelineEntryPtr createInstance()
Create and return a pointer to a new instance in the default storage for this entity model.
static agxData::ScalarAttributeT< agx::Real64 > * startTimeFrameAttribute
static agxData::ScalarAttributeT< agx::UInt32 > * costEstimateAttribute
static agxData::ScalarAttributeT< agx::UInt32 > * taskIdAttribute
static agxData::ScalarAttributeT< agx::String > * descriptionAttribute
ThreadTimelineEntryModel(const agx::String &name="ThreadTimelineEntry")
static agxData::ScalarAttributeT< agx::Real64 > * startTimeGlobalAttribute
void construct(agx::ThreadTimelineEntryPtr threadTimelineEntry)
static agxData::ScalarAttributeT< agx::UInt8 > * jobTypeAttribute
virtual void configure(agx::TiXmlElement *eEntity) override
static agxData::ScalarAttributeT< agx::String > * extraDataTitleAttribute
static ThreadTimelineEntryModel * instance()
static agxData::ScalarAttributeT< agx::Real64 > * extraDataAttribute
Pointer to a entity instance of type ThreadTimelineEntry.
AGXCORE_EXPORT agx::UInt32 const & taskId() const
AGXCORE_EXPORT agx::UInt32 const & poolSize() const
AGXCORE_EXPORT agx::UInt32 & costEstimate()
AGXCORE_EXPORT agx::String & extraDataTitle()
AGXCORE_EXPORT agx::Real64 & extraData()
AGXCORE_EXPORT ThreadTimelineEntryPtr()
AGXCORE_EXPORT agx::Real64 const & startTimeFrame() const
AGXCORE_EXPORT agx::Real64 & endTimeFrame()
AGXCORE_EXPORT ThreadTimelineEntryPtr(const agxData::EntityPtr &ptr)
AGXCORE_EXPORT const ThreadTimelineEntryInstance instance() const
AGXCORE_EXPORT ThreadTimelineEntryPtr(const agxData::EntityInstance &instance)
AGXCORE_EXPORT agx::UInt64 & jobPtr()
AGXCORE_EXPORT agx::String const & extraDataTitle() const
AGXCORE_EXPORT agx::UInt8 const & jobType() const
AGXCORE_EXPORT ThreadTimelineEntrySemantics * operator->()
AGXCORE_EXPORT agx::Real64 const & startTimeGlobal() const
AGXCORE_EXPORT agx::UInt32 const & costEstimate() const
AGXCORE_EXPORT agx::Real64 const & endTimeFrame() const
AGXCORE_EXPORT agx::Real64 & startTimeGlobal()
AGXCORE_EXPORT agx::UInt32 & poolSize()
AGXCORE_EXPORT agx::UInt32 & taskId()
AGXCORE_EXPORT agx::Real64 & startTimeFrame()
AGXCORE_EXPORT agx::Real64 & endTimeGlobal()
const ThreadTimelineEntryData * getData() const
AGXCORE_EXPORT agx::Real64 const & endTimeGlobal() const
ThreadTimelineEntryData * getData()
AGXCORE_EXPORT agx::UInt8 & jobType()
AGXCORE_EXPORT agx::Real64 const & extraData() const
AGXCORE_EXPORT agx::String & description()
ThreadTimelineEntryInstance InstanceType
AGXCORE_EXPORT ThreadTimelineEntryInstance instance()
AGXCORE_EXPORT agx::UInt64 const & jobPtr() const
AGXCORE_EXPORT agx::String const & description() const
AGXCORE_EXPORT ThreadTimelineEntryPtr(agxData::EntityStorage *storage, agx::Index id)
ThreadTimelineEntryModel ModelType
AGXCORE_EXPORT const ThreadTimelineEntrySemantics * operator->() const
Vector containing 'raw' data.
Definition: agx/Vector.h:246
#define agxAssertN(expr, format,...)
Definition: debug.h:145
#define DOXYGEN_END_INTERNAL_BLOCK()
Definition: macros.h:89
#define CALLABLE
Definition: macros.h:72
#define DOXYGEN_START_INTERNAL_BLOCK()
Definition: macros.h:88
#define AGX_FORCE_INLINE
Definition: macros.h:58
Contains classes for low level data storage for AGX.
Definition: Container.h:23
The agx namespace contains the dynamics/math part of the AGX Dynamics API.
double Real64
Definition: Real.h:44
uint32_t UInt32
Definition: Integer.h:32
uint64_t UInt64
Definition: Integer.h:33
uint8_t UInt8
Definition: Integer.h:30
UInt32 Index
Definition: Integer.h:44