pmc/include/vector.h
author Markus Bröker <mbroeker@largo.dyndns.tv>
Thu, 16 Apr 2009 12:49:13 +0200
changeset 54 c064ce9f40f5
parent 45 7197576fedcf
permissions -rw-r--r--
Vector and PMC ChangeLog * global var refCounter counts the objects * Copy Constructor implemented -> Surface cannot be copied ==> CC disabled -> Vector can be copied -> shows a warning committer: Markus Bröker <mbroeker@largo.homelinux.org>

/**
 * test/demos/pmc/include/vector.h
 * Copyright (C) 2008 Markus Broeker
 */

#ifndef VECTOR_H
#define VECTOR_H

#include <object.h>

namespace algebra {
    class Vector:public Object {
      public:
        enum Mode { DEG, RAD, GRAD };

        Vector (int xx = 0, int yy = 0);
        Vector (const Vector &);
        virtual ~ Vector ();

        int X ();
        int Y ();

        Vector operator+ (Vector &);
        Vector operator- (Vector &);
        double abs ();

        void vector ();
        double angle (Vector &);
        void setMode (Mode m = RAD);

      private:
        Mode mode;

        int x;
        int y;
    };
}
#endif