1############################################################################# 2## 3#W Objects.gd polymaking Package Marc Roeder 4## 5## 6 7## 8## 9#Y Copyright (C) 2006 Marc Roeder 10#Y 11#Y This program is free software; you can redistribute it and/or 12#Y modify it under the terms of the GNU General Public License 13#Y as published by the Free Software Foundation; either version 2 14#Y of the License, or (at your option) any later version. 15#Y 16#Y This program is distributed in the hope that it will be useful, 17#Y but WITHOUT ANY WARRANTY; without even the implied warranty of 18#Y MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19#Y GNU General Public License for more details. 20#Y 21#Y You should have received a copy of the GNU General Public License 22#Y along with this program; if not, write to the Free Software 23#Y Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA 24## 25DeclareCategory("IsPolymakeObject",IsObject); 26 27DeclareRepresentation("IsPolymakeObjectRep", 28 IsComponentObjectRep, 29 ["dir", 30 "filename", 31 "knownProperties"] 32 ); 33 34# 35#Extracting Information: 36##################### 37DeclareOperation("DirectoryOfPolymakeObject",[IsPolymakeObject]); 38DeclareOperation("FilenameOfPolymakeObject",[IsPolymakeObject]); 39DeclareOperation("FullFilenameOfPolymakeObject",[IsPolymakeObject]); 40DeclareOperation("KnownPropertiesOfPolymakeObject",[IsPolymakeObject]); 41DeclareOperation("NamesKnownPropertiesOfPolymakeObject",[IsPolymakeObject]); 42DeclareOperation("PropertyOfPolymakeObject",[IsPolymakeObject,IsString]); 43 44# 45#Manipulating contents of a polygon: 46############################### 47 48DeclareOperation("ClearPolymakeObject",[IsPolymakeObject]); 49DeclareOperation("ClearPolymakeObject",[IsPolymakeObject,IsDenseList]); 50 51DeclareOperation("UnbindKnownPropertyOfPolymakeObject",[IsPolymakeObject,IsString]); 52DeclareOperation("WriteKnownPropertyToPolymakeObject",[IsPolymakeObject,IsString,IsObject]);