# Unable to get raw timestamp from multipart image

**URL:** <https://forum.commonvisionblox.com/t/unable-to-get-raw-timestamp-from-multipart-image/1739>\
**Category:** Programming Questions\
**Tags:** cpp, acquisition, gigevision\
**Created:** [June 30, 2022, 11:55am UTC](https://forum.commonvisionblox.com/t/unable-to-get-raw-timestamp-from-multipart-image/1739 "2022-06-30T11:55:06Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![keerthitheja](https://avatars.discourse-cdn.com/v4/letter/k/839c29/32.png) [@keerthitheja](https://forum.commonvisionblox.com/u/keerthitheja)\
**Post date:** [June 30, 2022, 11:55am UTC](https://forum.commonvisionblox.com/t/unable-to-get-raw-timestamp-from-multipart-image/1739/1 "2022-06-30T11:55:06Z")

</div>

Hi all,  
I am running the acquisition stack as GenTL using CVB++ on my area scan camera and streaming the data as ImageStream. I am acquiring the images as multipart image. With this, the rawtimestamp of the image is Nan. When I try to acquire the images as Vin Acquisition, I am able to see the time stamp.

Any idea how i can get the rawtimestamp with GenTL ?

---

<div class="post-metadata">

**Author:** ![Chris](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.commonvisionblox.com/chris/32/1154_2.png) [@Chris](https://forum.commonvisionblox.com/u/Chris)\
**Post date:** [June 30, 2022, 12:32pm UTC](https://forum.commonvisionblox.com/t/unable-to-get-raw-timestamp-from-multipart-image/1739/2 "2022-06-30T12:32:50Z")

</div>

The TimeStamp should be part of one of the Nodemaps (Statistics maybe) on your ImageStream.  
The way this data is handled changed from the vin acquisition to the GenTL.

```cpp
auto devices = DeviceFactory::Discover(DiscoverFlags::IgnoreVins);
auto device = DeviceFactory::Open<GenICamDevice>(discoveryInfo[0].AccessToken(),
AcquisitionStack::GenTL);
auto stream = device->Stream<ImageStream>();
stream->RegisterManagedFlowSetPool(200);
stream->Start();
for (int i = 0; i < 10; ++i)
{
auto [image, result, nodeMaps] = stream->Wait();
}
stream->Abort();

```

---

<div class="post-metadata">

**Author:** ![keerthitheja](https://avatars.discourse-cdn.com/v4/letter/k/839c29/32.png) [@keerthitheja](https://forum.commonvisionblox.com/u/keerthitheja)\
**Post date:** [June 30, 2022, 12:55pm UTC](https://forum.commonvisionblox.com/t/unable-to-get-raw-timestamp-from-multipart-image/1739/3 "2022-06-30T12:55:51Z")

</div>

Hi @Chris  
Thank you for the response. Can you share a link to the documentation where I can see what all nodemaps I can access from the below line of code ?

> [@Chris](#):
>
> `auto [image, result, nodeMaps] = stream->Wait();`

---

<div class="post-metadata">

**Author:** ![Chris](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.commonvisionblox.com/chris/32/1154_2.png) [@Chris](https://forum.commonvisionblox.com/u/Chris)\
**Post date:** [July 1, 2022, 6:23am UTC](https://forum.commonvisionblox.com/t/unable-to-get-raw-timestamp-from-multipart-image/1739/4 "2022-07-01T06:23:20Z")

</div>

Unfortunately not, because they might differ from device to device.  
You should be able to iterate through the ‘nodeMaps’ you received from the line you are referring to to see what NodeMaps you have available though.

---

<div class="post-metadata">

**Author:** ![s-woe](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.commonvisionblox.com/s-woe/32/572_2.png) [@s-woe](https://forum.commonvisionblox.com/u/s-woe)\
**Post date:** [July 4, 2022, 12:40pm UTC](https://forum.commonvisionblox.com/t/unable-to-get-raw-timestamp-from-multipart-image/1739/5 "2022-07-04T12:40:39Z")

</div>

Generally speaking, there should be three(or four) nodes available:

- “IsIncomplete”: indicates whether the buffer is not delivered completely
- “Timestamp”: the buffer timestamp as delivered from the camera
- “SizeFilled”: An information of the total size of the delivered data  
in newer releases (\> 13.04.004):
- “FrameID”: the assigned unique id of the frame.

You may look at the migration guide to the new acquisition stack at [this](https://help.commonvisionblox.com/NextGen/14.0/md_theory_of_operation_image_manager __migration_guide__ acquisition_stack.html) .

---

<div class="post-metadata">

**Author:** ![s-woe](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.commonvisionblox.com/s-woe/32/572_2.png) [@s-woe](https://forum.commonvisionblox.com/u/s-woe)\
**Post date:** [July 5, 2022, 7:57am UTC](https://forum.commonvisionblox.com/t/unable-to-get-raw-timestamp-from-multipart-image/1739/6 "2022-07-05T07:57:49Z")

</div>

I forgot to mention that these nodes are available in a nodemap called “VinBuffer”, which is returned inside the `nodeMaps` from `stream->Wait()`

---

<div class="post-metadata">

**Author:** ![keerthitheja](https://avatars.discourse-cdn.com/v4/letter/k/839c29/32.png) [@keerthitheja](https://forum.commonvisionblox.com/u/keerthitheja)\
**Post date:** [July 5, 2022, 3:09pm UTC](https://forum.commonvisionblox.com/t/unable-to-get-raw-timestamp-from-multipart-image/1739/7 "2022-07-05T15:09:23Z")

</div>

Hi @s-woe  
Thank you for the solution. I can access the timestamp now.

For anyone looking to access the time stamp of the buffer from multipart image, here is the piece of code

C++:

```auto
Cvb::MultiPartImagePtr multiPartImage;
Cvb::WaitStatus waitStatus;
Cvb::NodeMapEnumerator enumeratorNodeMap;

std::tie(multiPartImage, waitStatus, enumeratorNodeMap) = streams[streamIndex]->WaitFor(TIMEOUT);

auto vinBufferNodemap = enumeratorNodeMap["VinBuffer"];

auto timeStamp = vinBufferNodemap->Node<Cvb::IntegerNode>("Timestamp")->Value();

```
