Commit 1078c0f9 authored by Utkarsh Ayachit's avatar Utkarsh Ayachit

Use vtkMTimeStamp for timestamp.

Using `vtkMTimeStamp` instead of `unsigned long` for timestamps. This
was causing overflows on Windows causing vtkPVDataDeliveryManager logic
to get confused on long running animations for windows.
parent 0b276f9b
......@@ -95,8 +95,8 @@ public:
// Data object for a streamed piece.
vtkSmartPointer<vtkDataObject> StreamedPiece;
unsigned long TimeStamp;
unsigned long ActualMemorySize;
vtkMTimeType TimeStamp;
vtkMTimeType ActualMemorySize;
public:
vtkOrderedCompositingInfo OrderedCompositingInfo;
......@@ -157,7 +157,7 @@ public:
}
vtkDataObject* GetDataObject() const { return this->DataObject.GetPointer(); }
unsigned long GetTimeStamp() const { return this->TimeStamp; }
vtkMTimeType GetTimeStamp() const { return this->TimeStamp; }
void SetNextStreamedPiece(vtkDataObject* data) { this->StreamedPiece = data; }
vtkDataObject* GetStreamedPiece() { return this->StreamedPiece; }
};
......@@ -374,7 +374,7 @@ void vtkPVDataDeliveryManager::SetPiece(vtkPVDataRepresentation* repr, vtkDataOb
this->Internals->GetItem(repr, low_res, port, /*create_if_needed=*/true);
if (item)
{
unsigned long data_time = 0;
vtkMTimeType data_time = 0;
if (data && (data->GetMTime() > data_time))
{
data_time = data->GetMTime();
......@@ -460,7 +460,7 @@ vtkAlgorithmOutput* vtkPVDataDeliveryManager::GetProducer(unsigned int id, bool
//----------------------------------------------------------------------------
bool vtkPVDataDeliveryManager::NeedsDelivery(
unsigned long timestamp, std::vector<unsigned int>& keys_to_deliver, bool use_low)
vtkMTimeType timestamp, std::vector<unsigned int>& keys_to_deliver, bool use_low)
{
vtkInternals::ItemsMapType::iterator iter;
for (iter = this->Internals->ItemsMap.begin(); iter != this->Internals->ItemsMap.end(); ++iter)
......
......@@ -171,7 +171,7 @@ public:
* server-sides using Deliver().
*/
bool NeedsDelivery(
unsigned long timestamp, std::vector<unsigned int>& keys_to_deliver, bool use_low_res);
vtkMTimeType timestamp, std::vector<unsigned int>& keys_to_deliver, bool use_low_res);
/**
* Triggers delivery for the geometries of indicated representations.
......
......@@ -803,7 +803,7 @@ public:
/**
* Provides access to the time when Update() was last called.
*/
unsigned long GetUpdateTimeStamp() { return this->UpdateTimeStamp; }
vtkMTimeType GetUpdateTimeStamp() { return this->UpdateTimeStamp; }
/**
* Copy internal fields that are used for rendering decision such as
......
......@@ -60,7 +60,7 @@ void vtkSMDataDeliveryManager::Deliver(bool interactive)
? view->GetUseDistributedRenderingForInteractiveRender()
: view->GetUseDistributedRenderingForStillRender();
unsigned long update_ts = view->GetUpdateTimeStamp();
vtkMTimeType update_ts = view->GetUpdateTimeStamp();
int delivery_type = LOCAL_RENDERING_AND_FULL_RES;
if (!use_lod && use_distributed_rendering)
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment