Skip to content

File DeviceTracer.h

File List > Intern > rayx-core > src > Tracer > DeviceTracer.h

Go to the documentation of this file

#pragma once

#include <cstring>
#include <vector>

#include "Core.h"
#include "ObjectMask.h"
#include "Rays.h"
#include "Shader/InvocationState.h"

namespace rayx {

class RAYX_API DeviceTracer {
  public:
    virtual ~DeviceTracer() = default;

    virtual Rays trace(const Group& beamline, Sequential sequential, const ObjectIndexMask& objectRecordMask, const RayAttrMask attrRecordMask,
                       const int maxEvents, const int maxBatchSize) = 0;
};

}  // namespace rayx