GCC Code Coverage Report


Directory: libimgdoc2/
File: libimgdoc2/inc/IDocInfo2d.h
Date: 2025-02-03 12:41:04
Exec Total Coverage
Lines: 2 2 100.0%
Functions: 2 2 100.0%
Branches: 0 0 -%

Line Branch Exec Source
1 // SPDX-FileCopyrightText: 2023 Carl Zeiss Microscopy GmbH
2 //
3 // SPDX-License-Identifier: MIT
4
5 #pragma once
6
7 #include "IDocInfo.h"
8
9 namespace imgdoc2
10 {
11 /// This interface is used for retrieving global information (about the document (i.e. usually aggregated from
12 /// the individual tiles) specific to the 2d-document.
13 class IDocInfo2d : public IDocInfo
14 {
15 public:
16 /// <summary> Gets the extents of an axis-aligned bounding box for all tiles. </summary>
17 /// <param name="bounds_x"> [in,out] If non-null, the extent for the x-coordinate is put here. </param>
18 /// <param name="bounds_y"> [in,out] If non-null, the extent for the y-coordinate is put here. </param>
19 virtual void GetTilesBoundingBox(imgdoc2::DoubleInterval* bounds_x, imgdoc2::DoubleInterval* bounds_y) = 0;
20
21 160 ~IDocInfo2d() override = default;
22
23 // no copy and no move (-> https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#c21-if-you-define-or-delete-any-copy-move-or-destructor-function-define-or-delete-them-all )
24 80 IDocInfo2d() = default;
25 IDocInfo2d(const IDocInfo2d&) = delete; // copy constructor
26 IDocInfo2d& operator=(const IDocInfo2d&) = delete; // copy assignment
27 IDocInfo2d(IDocInfo2d&&) = delete; // move constructor
28 IDocInfo2d& operator=(IDocInfo2d&&) = delete; // move assignment
29 };
30 }
31