Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
torch / include / torch / csrc / profiler / python / init.h
Size: Mime:
#pragma once

#include <Python.h>

#include <torch/csrc/profiler/collection.h>
#include <torch/csrc/profiler/python/pybind.h>

namespace pybind11 {
namespace detail {
using torch::profiler::impl::TensorID;

#define STRONG_POINTER_TYPE_CASTER(T) \
  template <>                         \
  struct type_caster<T> : public strong_pointer_type_caster<T> {};

STRONG_POINTER_TYPE_CASTER(torch::profiler::impl::StorageImplData);
STRONG_POINTER_TYPE_CASTER(torch::profiler::impl::AllocationID);
STRONG_POINTER_TYPE_CASTER(torch::profiler::impl::TensorImplAddress);
STRONG_POINTER_TYPE_CASTER(torch::profiler::impl::PyModuleSelf);
STRONG_POINTER_TYPE_CASTER(torch::profiler::impl::PyModuleCls);
STRONG_POINTER_TYPE_CASTER(torch::profiler::impl::PyOptimizerSelf);
#undef STRONG_POINTER_TYPE_CASTER

template <>
struct type_caster<TensorID> : public strong_uint_type_caster<TensorID> {};
} // namespace detail
} // namespace pybind11

namespace torch {
namespace profiler {

void initPythonBindings(PyObject* module);

} // namespace profiler
} // namespace torch