public static IEnumerable <ResourceIdInstrumentId> EntityInstrumentIds(long sid, SaHpiEntityPathT ep, long rdrtype) { long id = HpiConst.SAHPI_FIRST_ENTRY; do { ResourceIdInstrumentId ri = new ResourceIdInstrumentId(); long rptcnt; long rv = Api.saHpiGetIdByEntityPath(sid, ep, rdrtype, ref id, out ri.ResourceId, out ri.InstrumentId, out rptcnt); if ((id == HpiConst.SAHPI_FIRST_ENTRY) && (rv == HpiConst.SA_ERR_HPI_NOT_PRESENT)) { yield break; } if (rv != HpiConst.SA_OK) { yield break; } yield return(ri); } while (id != HpiConst.SAHPI_LAST_ENTRY); }
public static IEnumerable<ResourceIdInstrumentId> EntityInstrumentIds( long sid, SaHpiEntityPathT ep, long rdrtype ) { long id = HpiConst.SAHPI_FIRST_ENTRY; do { ResourceIdInstrumentId ri = new ResourceIdInstrumentId(); long rptcnt; long rv = Api.saHpiGetIdByEntityPath( sid, ep, rdrtype, ref id, out ri.ResourceId, out ri.InstrumentId, out rptcnt ); if ( ( id == HpiConst.SAHPI_FIRST_ENTRY ) && ( rv == HpiConst.SA_ERR_HPI_NOT_PRESENT ) ) { yield break; } if ( rv != HpiConst.SA_OK ) { yield break; } yield return ri; } while ( id != HpiConst.SAHPI_LAST_ENTRY ); }