//
//   COMPONENT_NAME: somx
//
//   ORIGINS: 27
//
//
//   10H9767, 10H9769  (C) COPYRIGHT International Business Machines Corp. 1992,1994
//   All Rights Reserved
//   Licensed Materials - Property of IBM
//   US Government Users Restricted Rights - Use, duplication or
//   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
//
/* @(#) somx/simple.idl 2.4 9/20/94 15:10:53 [12/6/94 15:10:59] */

/*
 *
 * DISCLAIMER OF WARRANTIES.
 * The following [enclosed] code is sample code created by IBM
 * Corporation. This sample code is not part of any standard or IBM
 * product and is provided to you solely for the purpose of assisting
 * you in the development of your applications.  The code is provided
 * "AS IS". IBM MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT
 * NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE, REGARDING THE FUNCTION OR PERFORMANCE OF
 * THIS CODE.  IBM shall not be liable for any damages arising out of
 * your use of the sample code, even if they have been advised of the
 * possibility of such damages.
 *
 * DISTRIBUTION.
 * This sample code can be freely distributed, copied, altered, and
 * incorporated into other software, provided that it bears the above
 * Copyright notice and DISCLAIMER intact.
 */

#ifndef simple_idl
#define simple_idl

#include <somobj.idl>
interface Simple : SOMObject
{
  Simple setX(in long x);
  // setX sets x, and returns self

  long getX();
  // getX returns the current value of x

  attribute long x;                
  //# Public data members are mapped onto attributes.
#ifdef __PRIVATE__  
  attribute long y;                
  //# Private data members are mapped onto private attributes.
#endif /* __PRIVATE__ */

#ifdef __SOMIDL__
implementation 
{
  releaseorder: setX,getX,_get_x,_set_x,_get_y,_set_y;

  //# Class Modifiers
  callstyle=oidl;
  filestem = simple;

  //# Method Modifiers
  somInit: override;

  //# Attribute Modifiers.
  x: indirect;
#ifdef __PRIVATE__  
  y: indirect;
#endif /* __PRIVATE__ */

};
#endif /* __SOMIDL__ */

};

#endif  /* simple_idl */

