//
// Copyright (c) 1997 X/Open Company Ltd., A member of The Open Group.
//
// All rights reserved. No part of this source code may be reproduced,
// stored in a retrieval system, or transmitted, in any form or by any
// means, electronic, mechanical, photocopying, recording or otherwise,
// except as stated in the end-user licence agreement, without the prior
// permission of the copyright owners.
//
// Developed for X/Open by ApTest Ireland Limited.
//
// Project: CORVAL2
//


typedef struct GreenPepper{
  sequence<float>  YellowPepper;
  sequence<float>  CoxPippin[3];
  sequence<float,3>  Banana;
  sequence<float,3>  Currant[3];
  sequence<double>  Tomato;
  sequence<double>  Celeriac[3];
  sequence<double,3>  Corriander;
  sequence<double,3>  Broadbeans[3];
  sequence<long>  BritishQueens;
  sequence<long>  GoldenWonder[3];
  sequence<long,3>  MarisPiper;
  sequence<long,3>  Apple[3];
  sequence<short>  BlackCherry;
  sequence<short>  Pumpkin[3];
  sequence<short,3>  Dates;
  sequence<short,3>  Cucumber[3];
  sequence<unsigned long>  Leek;
  sequence<unsigned long>  GaliaMelon[3];
  sequence<unsigned long,3>  LoganBerry;
  sequence<unsigned long,3>  Aniseed[3];
  sequence<unsigned short>  Beansprout;
  sequence<unsigned short>  Runnerbean[3];
  sequence<unsigned short,3>  GrannySmith;
  sequence<unsigned short,3>  Billberries[3];
  sequence<char>  Sweetcorn;
  sequence<char>  KidneyBean[3];
  sequence<char,3>  GoldenDelicous;
  sequence<char,3>  RedOnion[3];
  sequence<boolean>  EggPlant;
  sequence<boolean>  Mustard[3];
  sequence<boolean,3>  Sweedes;
  sequence<boolean,3>  Mangetout[3];
  sequence<octet>  Melon;
  sequence<octet>  Kumquats[3];
  sequence<octet,3>  Waterchestnut;
  sequence<octet,3>  Plantain[3];
  string Mangosteen;
  string FrenchBeans[3];
  string<3>  Papaya;
  string<3>  Grapefruit[3];
} Peanutsquash[3];

interface idlServer {

  exception PeanutsquashExcpt{
    ::Peanutsquash ex1;
  };

  attribute ::Peanutsquash PeanutsquashAttr;

  ::Peanutsquash PeanutsquashOp(
    in    ::Peanutsquash p1,
    out   ::Peanutsquash p2,
    inout ::Peanutsquash p3
  ) raises (PeanutsquashExcpt);

  exception GreenPepperExcpt{
    ::GreenPepper ex1;
  };

  attribute ::GreenPepper GreenPepperAttr;

  ::GreenPepper GreenPepperOp(
    in    ::GreenPepper p1,
    out   ::GreenPepper p2,
    inout ::GreenPepper p3
  ) raises (GreenPepperExcpt);
};

