MCPcopy Create free account
hub / github.com/catboost/catboost / TRawObjectsDataProvider

Class TRawObjectsDataProvider

catboost/libs/data/objects.h:409–529  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

407 };
408
409 class TRawObjectsDataProvider : public TObjectsDataProvider {
410 public:
411 using TData = TRawObjectsData;
412
413 public:
414 TRawObjectsDataProvider(
415 TMaybe<TObjectsGroupingPtr> objectsGrouping, // if not defined - init from groupId
416 TCommonObjectsData&& commonData,
417 TRawObjectsData&& data,
418
419 bool skipCheck,
420
421 // needed for check parallelization, can pass Nothing() if skipCheck is true
422 TMaybe<NPar::ILocalExecutor*> localExecutor
423 )
424 : TObjectsDataProvider(std::move(objectsGrouping), std::move(commonData), skipCheck)
425 {
426 if (!skipCheck) {
427 data.Check(
428 GetObjectCount(),
429 *GetFeaturesLayout(),
430 CommonData.CatFeaturesHashToString.Get(),
431 *localExecutor
432 );
433 }
434 Data = std::move(data);
435 }
436
437 bool EqualTo(
438 const TObjectsDataProvider& rhs,
439 bool ignoreSparsity = false,
440 bool ignoreCatFeaturesHashToString = false
441 ) const override {
442 const auto* rhsRawObjectsData = dynamic_cast<const TRawObjectsDataProvider*>(&rhs);
443 if (!rhsRawObjectsData) {
444 return false;
445 }
446 return TObjectsDataProvider::EqualTo(rhs, ignoreSparsity, ignoreCatFeaturesHashToString)
447 && (Data == rhsRawObjectsData->Data);
448 }
449
450 TObjectsDataProviderPtr GetSubsetImpl(
451 const TObjectsGroupingSubset& objectsGroupingSubset,
452 TMaybe<TConstArrayRef<ui32>> ignoredFeatures,
453 ui64 cpuRamLimit,
454 NPar::ILocalExecutor* localExecutor
455 ) const override;
456
457 bool HasDenseData() const override;
458 bool HasSparseData() const override;
459
460
461 // needed for low-level optimizations in CPU applying code
462 const TFeaturesArraySubsetIndexing& GetFeaturesArraySubsetIndexing() const {
463 return *CommonData.SubsetIndexing;
464 }
465
466 /* can return nullptr if this feature is unavailable

Callers 2

Y_UNIT_TESTFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected