Pelco Developer Network (PDN)

VxSDK - Obtain list of Recorders

How to use Vx SDK to get a collection containing all data storage (recorders) from the system

You can get a collection containing all of the data storages (recorders) from the system using IVxSystem::GetDataStorages. Then you can call IVxDataStorage::GetDataSources on each IVxDataStorage object to get a collection of the data sources (cameras) assigned to it. Also, if you want a list of all available data sources you can call IVxSystem::GetDataSources.

It is also worth mentioning that it is not really recommended to continue to use the methods of grouping devices by type. To do this you'd use the steps above to get the collection of data storages and their data sources, then call GetHostDevice on each data source/data to get the device hosting each one. From there you would have the list of camera devices recording to each recorder device. It causes a lot of potentially unnecessary overhead.