summaryrefslogblamecommitdiff
path: root/hw6/include/intersector_base.h
blob: 64fb05ebbca3bc3523c56c24c9c8103313561bea (plain) (tree)

































                                                                    
/******************************************************************/
/* This file is part of the homework assignments for CSCI-427/527 */
/* at The College of William & Mary and authored by Pieter Peers. */
/* No part of this file, whether altered or in original form, can */
/* be distributed or used outside the context of CSCI-427/527     */
/* without consent of either the College of William & Mary or     */
/* Pieter Peers.                                                  */
/******************************************************************/
#ifndef _INTERSECTOR_BASE_H_
#define _INTERSECTOR_BASE_H_

#include "ray.h"
#include "intersectionPoint.h"

class intersector_base {
 public:
  //////////////////
  // Constructors //
  //////////////////
  intersector_base(void) {}
  intersector_base(const intersector_base&) = delete;
  
  ///////////////
  // Operators //
  ///////////////
  intersector_base& operator=(const intersector_base&) = delete;

  /////////////
  // Methods //
  /////////////
  virtual intersectionPoint intersect(const ray& r) const = 0;
};

#endif /* _INTERSECTOR_BASE_H_ */