home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / opendc12.zip / od124os2.exe / od12otk1.exe / include / TrnsfrmB.idl < prev    next >
Text File  |  1997-04-02  |  5KB  |  172 lines

  1. /* @(#)Z 1.6 com/src/imaging/idl/TrnsfrmB.idl, odimaging, od96os2, odos29712d 97/03/21 17:18:21 (96/10/29 09:26:11) */
  2. //#====START_GENERATED_PROLOG======================================
  3. //#
  4. //#
  5. //#   COMPONENT_NAME: odimaging
  6. //#
  7. //#   CLASSES: none
  8. //#
  9. //#   ORIGINS: 82,27
  10. //#
  11. //#
  12. //#   (C) COPYRIGHT International Business Machines Corp. 1995,1996
  13. //#   All Rights Reserved
  14. //#   Licensed Materials - Property of IBM
  15. //#   US Government Users Restricted Rights - Use, duplication or
  16. //#   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  17. //#       
  18. //#   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  19. //#   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  20. //#   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  21. //#   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
  22. //#   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
  23. //#   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
  24. //#   OR PERFORMANCE OF THIS SOFTWARE.
  25. //#
  26. //#====END_GENERATED_PROLOG========================================
  27. //#
  28.  
  29. /********************************************************************/
  30. /*  Licensed Materials - Property of IBM                            */
  31. /*                                                                  */
  32. /*                                                                  */
  33. /* Copyright (C) International Business Machines Corp., 1994.       */
  34. /* Copyright (C) Apple Computer, Inc., 1994                         */
  35. /*                                                                  */
  36. /*  US Government Users Restricted Rights -                         */
  37. /*  Use, duplication, or disclosure restricted                      */
  38. /*  by GSA ADP Schedule Contract with IBM Corp.                     */
  39. /*                                                                  */
  40. /*                                                                  */
  41. /********************************************************************/
  42. //#    Copyright:    (r) 1993 - 1995 by Apple Computer, Inc., all rights reserved.
  43.  
  44. #ifndef _TRNSFRMB_
  45. #define _TRNSFRMB_
  46.  
  47. #ifndef _REFCTOBJ_
  48. #include "RefCtObj.idl"  
  49. #endif
  50.  
  51. //==============================================================================
  52. // Classes defined in this interface
  53. //==============================================================================
  54.  
  55. interface  ODBaseTransform;
  56.  
  57. //==============================================================================
  58. // Classes used by this interface
  59. //==============================================================================
  60.  
  61. interface ODTransform;
  62. interface ODShape;
  63. interface ODStorageUnit;
  64.  
  65. //==============================================================================
  66. // ODTransform
  67. //==============================================================================
  68.  
  69. interface ODBaseTransform :  ODRefCntObject
  70. {
  71.   //#---------------------------------
  72.   //# factories:
  73.  
  74.     ODTransform        NewTransform();
  75.     ODTransform        Copy();
  76.  
  77.   //#---------------------------------
  78.   //# getters:
  79.  
  80.     ODTransformType    GetType();
  81.     void            GetOffset(out ODPoint offset);
  82.     void            GetPreScaleOffset(out ODPoint offset);
  83.     void            GetScale(out ODPoint scale);
  84.     void            GetMatrix(out ODMatrix matrix);
  85.     ODBoolean        HasMatrix();
  86.  
  87.     ODBoolean        IsSameAs(in ODTransform compareTransform);
  88.  
  89.   //#---------------------------------
  90.   //# setters:
  91.  
  92.     ODTransform        Reset();
  93.     ODTransform        SetMatrix(in ODMatrix matrix);
  94.     ODTransform        CopyFrom(in ODTransform sourceTransform);
  95.   
  96.   //#---------------------------------
  97.   //# geometric operations:
  98.   
  99.     ODTransform        SetOffset(in ODPoint point);
  100.     ODTransform        MoveBy(in ODPoint point);
  101.     ODTransform        ScaleBy( in ODPoint scale);
  102.     ODTransform        ScaleDownBy( in ODPoint scale);
  103.  
  104.     ODTransform        Invert( );
  105.     ODTransform        PreCompose(in ODTransform transform);
  106.     ODTransform        PostCompose(in ODTransform transform);
  107.  
  108.   //#---------------------------------
  109.   //# geometry operations with points & shapes:
  110.  
  111.     void            TransformPoint(inout ODPoint point);
  112.     void            InvertPoint(inout ODPoint point);
  113.   
  114.     void            TransformShape(in ODShape shape);
  115.     void            InvertShape(in ODShape shape);
  116.   
  117.   //#---------------------------------
  118.   //# input / output:
  119.   
  120.     void            WriteTo(in ODStorageUnit storageUnit);
  121.     void            ReadFrom(in ODStorageUnit storageUnit);
  122.  
  123.  
  124. #ifdef __SOMIDL__
  125.     implementation
  126.     {
  127.         override:
  128.             somUninit,
  129.             Purge,
  130.             Release;
  131.             
  132.         releaseorder:
  133.             GetType,
  134.             GetOffset,
  135.             GetPreScaleOffset,
  136.             GetScale,
  137.             GetMatrix,
  138.             HasMatrix,
  139.             IsSameAs,
  140.             Reset,
  141.             SetMatrix,
  142.             Copy,
  143.             CopyFrom,
  144.             SetOffset,
  145.             MoveBy,
  146.             ScaleBy,
  147.             ScaleDownBy,
  148.             Invert,
  149.             PreCompose,
  150.             PostCompose,
  151.             TransformPoint,
  152.             InvertPoint,
  153.             TransformShape,
  154.             InvertShape,
  155.             WriteTo,
  156.             ReadFrom,
  157.             NewTransform,
  158.             reserved1,
  159.             reserved2;
  160.  
  161.         majorversion = 1; minorversion = 0;
  162.                 
  163.         functionprefix = ODBaseTransform;
  164.         
  165.   };
  166. #endif
  167. };
  168.  
  169. #endif //# _TRNSFRMB_
  170.  
  171.  
  172.