// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- // vim: ts=8 sw=2 smarttab #ifndef LIBRBD_API_IMAGE_H #define LIBRBD_API_IMAGE_H #include "librbd/Types.h" #include #include #include namespace librados { struct IoCtx; } namespace librbd { struct ImageCtx; namespace api { template struct Image { typedef std::pair PoolSpec; typedef std::set ImageIds; typedef std::map PoolImageIds; typedef std::map ImageNameToIds; static int list_images(librados::IoCtx& io_ctx, ImageNameToIds *images); static int list_children(ImageCtxT *ictx, const ParentSpec &parent_spec, PoolImageIds *pool_image_ids); }; } // namespace api } // namespace librbd extern template class librbd::api::Image; #endif // LIBRBD_API_IMAGE_H