summaryrefslogtreecommitdiff
path: root/Examples/php/proxy/example.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Examples/php/proxy/example.cxx')
-rw-r--r--Examples/php/proxy/example.cxx43
1 files changed, 43 insertions, 0 deletions
diff --git a/Examples/php/proxy/example.cxx b/Examples/php/proxy/example.cxx
new file mode 100644
index 000000000..94e4a7888
--- /dev/null
+++ b/Examples/php/proxy/example.cxx
@@ -0,0 +1,43 @@
+/* File : example.c */
+
+#include "example.h"
+#include <math.h>
+#ifndef M_PI
+# define M_PI 3.14159265358979323846
+#endif
+
+int Shape::get_nshapes() {
+ return nshapes;
+}
+
+/* Move the shape to a new location */
+void Shape::move(double dx, double dy) {
+ x += dx;
+ y += dy;
+}
+
+int Shape::nshapes = 0;
+
+void Circle::set_radius( double r ) {
+ radius = r;
+}
+
+double Circle::area(void) {
+ return M_PI*radius*radius;
+}
+
+double Circle::perimeter(void) {
+ return 2*M_PI*radius;
+}
+
+double Square::area(void) {
+ return width*width;
+}
+
+double Square::perimeter(void) {
+ return 4*width;
+}
+
+Circle *CircleFactory( double r ) {
+ return new Circle(r);
+}