1
0
mirror of https://github.com/Halofreak1990/XFXFramework synced 2024-12-26 13:49:34 +01:00
Tom Lint 9b2110649e Updated core XFX structures
Made [out] parameters passed by reference to actually return their
result in that parameter
Replaced non-ASCII characters in some source files
2013-05-18 17:44:15 +02:00

50 lines
1.3 KiB
C++

/*****************************************************************************
* Ray.h *
* *
* XFX Ray definition file *
* Copyright (c) XFX Team. All Rights Reserved *
*****************************************************************************/
#ifndef _XFX_RAY_
#define _XFX_RAY_
#include <System/Interfaces.h>
#include <System/Object.h>
using namespace System;
namespace XFX
{
struct BoundingBox;
struct BoundingSphere;
struct Plane;
struct Vector3;
// Defines a ray.
struct Ray : IEquatable<Ray>, Object
{
Vector3 Direction;
Vector3 Position;
Ray(const Vector3 direction, const Vector3 position);
Ray(const Ray &obj);
Ray();
bool Equals(Object const * const obj) const;
bool Equals(const Ray other) const;
int GetHashCode() const;
int GetType() const;
float Intersects(BoundingBox boundingbox) const;
void Intersects(BoundingBox boundingbox, out float& result) const;
float Intersects(BoundingSphere sphere) const;
void Intersects(BoundingSphere sphere, out float& result) const;
float Intersects(Plane plane) const;
void Intersects(Plane plane, out float& result) const;
const char* ToString() const;
bool operator==(const Ray& right) const;
bool operator!=(const Ray& right) const;
};
}
#endif //_XFX_RAY_