1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-07 18:30:55 +03:00
occt/samples/qt/FuncDemo/src/CircleDriver.h
Benjamin Bihler 0e9fe060f3 0028355: Stating wrong parent class in DEFINE_STANDARD_RTTIEXT is not recognized during compilation
Added compile-time checks (static_assert) in DEFINE_STANDARD_RTTI*(A,B) macros to check that A is actually the class being defined, and B is its base class.
For GCC compiler version 4.7 and later on, check ensures that B is direct base class of A.

Fixed dubious RTTI definitions.
2017-01-19 17:25:56 +03:00

37 lines
776 B
C++

// CircleDriver.h: interface for the Circle function driver.
//
//////////////////////////////////////////////////////////////////////
#if !defined(_CIRCLEDRIVER_H_)
#define _CIRCLEDRIVER_H_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "BaseDriver.h"
#include <Standard_DefineHandle.hxx>
#include <TFunction_Logbook.hxx>
DEFINE_STANDARD_HANDLE(CircleDriver, BaseDriver)
// A Circle function driver.
class CircleDriver : public BaseDriver
{
public:
// ID of the function driver
static const Standard_GUID& GetID();
// Constructor
CircleDriver();
// Execution.
virtual Standard_Integer Execute(Handle(TFunction_Logbook)& log) const;
DEFINE_STANDARD_RTTIEXT(CircleDriver, BaseDriver)
};
#endif // !defined(_CIRCLEDRIVER_H_)