Question about range . . .

I might buy Airport Express for my Macbook. I've never had wireless internet before. My house is about 1500 square feet, basically one floor. Do you think I'll have issues if if the router is on one end of the house and my macbook is on another?
I certainly would rather only buy one router instead of two.
Also, while I'm sure express is good, i've read that the cheaper third part ones (Linkseys?) are just as good. Any advantage of one over the other?
Thanks!!!
Lindsay

The advertised range of pretty much all of the 802.11b/g devices is 150 feet. That is 150 feet without obstruction and other sources of RF interference. It is virtually impossible to tell you what kind of range you will get in your house without a detailed description of floor plan, building materials, decorations, etc. You can get an idea of some of the factors in KB 58543, AirPort: Potential sources of interference.
I have a 2 story brick house and have no problems with wireless reception anywhere that I have tried. I have used several different wireless base stations from several manufacturers and had the same experience.

Similar Messages

  • A lot of questions about my MacBook Air

    I am really new to re-using Apple computers.The last time I used an Apple computer was back in 1987 when the school and my family had Apple IIGS computers. I have been using PC's which reqiure Microsoft. I a lot of have questions (10 questions) about my MacBook Air and I hope you good people can and will help me.
    Product: MacBook Air
    Operating System: Mac OS X Version 10.7.4
    1) I Downloaded MacKeeper because I was fooled. I had a bad feeling just before I Downloaded it and I should have listened to my heart. However, I didn't buy it or fully Install it. It was like a test run and then they wanted me to pay almost $100 for it. Thankfully, I didn't because I read it is Malware. I spoke with an Apple Tech at Apple Care and he helped me get rid of it (or so we think). I don't see it anymore on my computer. I read it can slow down your computer. How can you tell if it's really off of the computer?
    2) When I open "Finder" and I see that there are people Sharing my computer with me. I went into AirDrop and it reads, "Other people can see your Mac as (my name) MacBook Air when their computer is nearby." I bought a HotSpot and while it's turned on and I selected it as my WI-FI connection I thought it would  get rid of these people, protect what I type, me, my items, computer, etc. But it didn't.  
    I didn't know that I have to buy a exteral CD and/or DVD Player in order to connect to the brand new Modem and Router in one by NetGear. I am so used to PCs and the CD/DVD Players being built inside.
    The people at Apple Store told me that there is an internal modem inside, but I don't know how to find it and what to do then.  Should I use a Firewall?, An AntiVirus, AntiMalware, AntiSpyware, etc. Apple Care tech told me I don't need to get an AntiVirus.
    3) Is there a new kind of Wireless Modem and Router that doesn't require a CD-ROM?
    4) When I travel or fly and I am not close to home I was told by Best Buy and Sprint that I had to buy a mobile HotSpot to use the computer (WI-FI) safely. As I typed, I have one. But it's pretty expensive and only gives me 1 hour and 15 minutes per day to Stream. What can I do to use this computer safely Online when I am out of range from a Modem and Router? What do people do when they travel on airplanes?  
    5) This compter won't let me use "Raid." I think you have to have a newer version. I hard about Raid on the radio from Leo (can't recall his last name) who's a Tech expert.
    6) Should I buy a ZipDrive? Apple Store Tech told me that I didn't need a ZipDrive. I just remember the episode of HBO's "Sex and The City" when Carrie looses everything because her copy crashed. Now, of course, I know that's a fictional show, but with PC's and Microsoft I have lost everything when it crashed, frooze up, etc. I know there's iClouds. I heard about Carbonite, but I have read the Pros and Cons about it. Mostly they are Cons about it. I just don't want to do anything wrong and mess up this computer.
    7) Should I buy a new Printer/Copier/Scanner because mine is an HP. It's not new, but it works. I even have a CD-ROM for Macs. What about the new product called, "Neat"?
    8) Is there a special product that I should buy to do Online Banking and/or other important stuff?
    9) I saw and read about iWork in the Apps Store and it sounds cool. I still have alot of friends and colleagues who still use Microsoft. Is iWork good to use? Should I Download it from the Apple Apps Store or can a buy it at Apple? Is there another Word Processing Program that is great and user friendly and will work with Macs and PCs?
    10) Should I Update the OS with OS X Mountian Lion Pro from the Apple Apps Store or buy it at Apple Store?
    In advance, I wish to thank you in this Apple Support Communites for your help.  Have a safe and happy holiday weekend!

    1) Here are instructions for removing MacKeeper. Since it mostly consists of manually looking for folders and specific files, if you follow the instructions you either fail to find what you are told to find (because your AppleCare guide gave you complete instructions which you followed) or you'll find some additional files that need to be replaced.
    2 & 3) I assume you are looking at the sidebar of a Finder window and seeing Shared and computers under it. Those are computers that you can potentionally share. To do so you'd need an account on their computer and a password. They are not sharing your computer.
    AirDrop allows you to create an adhoc network for filesharing and it only functions when you have selected the AirDop item in the SideBar. Actually doing that merely announces to computers in the same network node that your computer is available for a file to be sent to. Even then you have to explicitly allow the file to be downloaded to your computer. Similarly you'd be able to see other computers with AirDrop selected and be able to send them a file - which they'd have to accept.
    The only reason your NetGear Router comes with a CD is to install and run their 'easy' step by step configuration program. It can also be done manually with a browser. Read the manual to find the IP address you must enter to access the router's configuration menu. Apple's WiFi routers don't require a CD to install the software because the configuration software is already on your computer.
    I do have my firewall turned on. AntiVirus software isn't a bad idea - I use Sophos having tested it for a review for our local User Group and I found I liked it better than ClamAVx which is what I'd been using before. Both are free.
    4) I think you were scammed by Sprint and BestBuy. I use hotel, coffee shop, and restaurant WiFi spots and have for years. However, because they can be unsecured, I do not shop online or bank when I'm using them. I also use 1Password and don't reuse passwords so even if a sniffer should grab an account and password that's all it would get - one account.
    5) Raid doesn't really make sense with a MacBook Air - a RAID involves 2 or more disks being used as if they were one.
    6) Zip drive? No. External hard drive - yes. It isn't a question of if a computer's hard drive will malfunction, it is when. OWC has a nice selection of external drives and the Mac has a built in backup system called TimeMachine. Due to the way TimeMachine works, I've found that your TimeMachine drive should be at least twice as large - and preferably 3-4 times as large as the data you are backing up.
    7) if your printer works and it has Mountain Lion drivers, why replace it?
    8) Online banking is done with a browser - Use Safari or FireFox
    9) If trading files with Windows users is important Mac: Office is your best bet. If not, iWork, Mac:Office, or LibreOffice are all good possibilities.
    10) you can only buy Mt Lion via the App Store.

  • Some questions about configuration in MAX.

    Hello,everyone!
    I have some questions about configuration in MAX(I am a jackaroo for motion control development),I hope I can get your help.
    I use PCI-7344+UMI-7764+Servo amplifier+Servo motor,my MAX version is 4.2 and I use NI-Motion7.5
    My question as following:
    1,In Axis Configuration,for motor type,why I must select stepper but not servo?my motor is servo motor!If I select Servo,my motor can't run,I don't know why.
     If I select stepper,though motor can work but I can't test encoder in MAX.
    2,In Stepper settings,for stepper loop mode,why I must select open-loop but not close-loop?If I select close-loop,the servo motor doesn't work too.
    3,If I want my two servo motors run at different velocity,How shoud I do?It seems I just can set the same velocity in MAX for my two servo motors.
     My English is poor,Pls pardon me!I come from China.
    Thank you for your help!
    EnquanLi
    Striving is without limit!

    Hi,Jochen,
    Thank you for your kindly help!
    The manufacturer of the drive and motor that I am using now is Japan SANYO DENKI,drive type is RS1A01AA,motor type is R2AA06020FXP00.
    And I use position control mode,thehe encoder's counts per revolution is 131072.I set the electronic gear ratio to 1:1 for drive.
    Now,I can use Close-Loop to control the motor but still has some problems.When I configure it to run in closed loop mode, the motors behave strangely and never move to the target position.When I configure it to run in closed loop mode, the motors behave strangely and never move to the target position.The detail situation is as following
    1,Motor can't run.
    2, Or motor moves to a position, then moves in the same direction agian and eventually stops.
    Except for the  two points mentioned above,"Following Error" is  occured frequently,I don't know why.
    I am still not clear why I must set the motor type be stepper in MAX .
    And I have another question:what the relationship between the steps and the counts?They have the proportion relations?I notice that there are a section said like this in help document: For proper closed-loop and p-command operation, steps per revolution/counts per revolution must be in the range of 1/32,767 < steps/counts < 32,767. An incorrect counts to steps ratio can result in failure to reach the target position and erroneous closed-loop stepper operation.
    I am verry sorry I have too many questions!
    I am very appreciate for your kingly help!Thanks again!
    EnquanLi
    China
    Striving is without limit!

  • Two Questions about Airport Express

    All, I am a recent convert to using a Mac so bear with me.
    I have two questions about the Airport Express.
    Question if I buy one in the USA, I will visiting this week on holiday,can I use it the UK with a UK adaptor/apple plug?
    Can the Express be used with my current wireless network, using a Netgear DG834G V4, I have read lots in the forums about putting a $ sign in front of the WPA password?
    Any help and advice gratefully received.

    Tesserax wrote:
    Hello andixbox. Welcome to the Apple Discussions!
    Question if I buy one in the USA, I will visiting this week on holiday,can I use it the UK with a UK adaptor/apple plug?
    Yes, but at least two things to consider:
    o The US version of the 802.11n AirPort Express Base Station (AXn) only supports radio channels 1-11 in the 802.11g radio mode. Channels 12-14, used in other countries outside the US will not be available.
    o The AXn supports both the 2.4 and 5 GHz radio bands for 802.11n. The 5 GHz band is restricted in certain countries (like the UK) so operating in this mode may get you unwanted attention.
    That should be okay then because the Netgear broadcasts on channels 1-11. I hadn't appreciated the 5 Ghz band, but having checked both US and UK Apple sites the techspecs both mention 2.4 Ghz and 5 Ghz.
    Can the Express be used with my current wireless network, using a Netgear DG834G V4, I have read lots in the forums about putting a $ sign in front of the WPA password?
    If your intent is to have the AXn join the Netgear as a wireless client, then yes it should work. The "$" requirement was for WEP. This shouldn't be necessary for WPA or WPA2.
    I intended to use the AXn as an range extender, but you mention wireless client, is that something different?

  • Question about PNP...LDB

    Hi All,
    I have been asked a simple but strange question about PNP LDB. When we assigned logical database in our program, it will basically create a selection screen, which have certain fields. Like Today.. Some date ranges. Person assigned number, company code, company status.
    From my standpoint I know when ever we give selection to PNP screen we have to check this selection parameters in our programs, like date range ,person number, employee status etc ….RIGHT?
    Somebody ask me that without checking selection in our report I mean any parameters, it can filter the record, my Answer was BIG “NO”. You need to check all the parameters in your program.
    Next question asked by me was what the purpose of PNP. I replied that rather then declaring and doing bunch of databases SAP provide logical database so current all the records and do what ever you like to do.
    What you think guys?
    Thanks

    Here`s the question , when I am giving "1"active employee in employee status why its pulling up the information for '0' withdrawn employee?
    Message was edited by: Saquib Khan

  • A question about creating packages as local objects in ABAP

    Hi,
    I have a question about creating packages with SE80. Whenever I create a new package it is assigned a new transport request. After that, I can create new programs inside this package, and each time I can choose whether to assign the new program to a transport request or just save it as a local object (I often do this for test programs that I don't transport and I remove them once my tests have been done).
    What I would like to ask is that, is it possible to create a package (and not just programs inside a given package) as a local object? so that every new object created in this package will be considered as a local object?
    Thanks in advane,
    Kind Regards,
    Dariyoosh

    Thomas Zloch wrote:
    Please also check the F1 help for the package field e.g. in SE80, SAP standard is in range A-S and U-X, namespaces start with "/", so you should be save. I am using the T namespace for temporary stuff since a long time and did not have a problem so far.
    > Thomas
    >
    > P.S. this applies to the package name only, of course
    Thank you very much for this remark, I checked F1 help for the package field and in fact as you mentioned these ranges are for local objects.
    Once again, thank you very much for your help.
    Kind Regards,
    Dariyoosh

  • Question about using TVARV in an ABAP program

    Hello gurus, Im sorry about the silly question.
    I have a question about using TVARV in an ABAP program.
    A program is presenting a problem and I think that in this code:
    SELECT SIGN OPTI LOW HIGH
      FROM TVARV
      INTO TABLE R_1_163431035_VELOCIDADE
      WHERE  NAME = '1_163431035_VELOCIDADE'
      AND    TYPE = 'S'.
      IF ZMM001-VELOCIDADE_B   IN R_1_163431035_VELOCIDADE AND
          ZOPERADORAS-OPERADORA = 'ABCD' AND
          ZMM001-MATERIAL       IN R_1_163431035_PRODUTO.
      ELSE.
      ENDIF.
    What happens is that the value "ZMM001-SPEED" B not exist in "R1_163431035_VELOCIDADE" but the program executes commands under the IF and not under the ELSE, as I imagine it would work. Is this correct ?
    I am new to ABAP programming, but I have a lot of XP in other programming languages ​​and this makes no sense to me.
    Anyone know where I can find some documentation of the use of "TVARV" in ABAP programs?
    I search the Internet if other programmers use TVARV this way, but found nothing, which leads me to think that was a quick and dirty solution that used here.
    If this is a bad way to program, what would be the best way?
    Regards
    Ronaldo.

    Hi Ronaldo,
    But in this case, the range is not empty, there are 17 records, in this way.:
    For the column "SING" all values ​​are "E"
    It means that the result is false if ZMM001-VELOCIDADE_B has the same value as one of the 17 records (E = exclude).
    For instance, if it has value 'C' and one of 17 records matches C, then the result is false.
    The "IF" with "IN" using "TVARV" as used in the program of the post above has the same behavior of a selection screen?
    Yes, the same behavior as the selection criterion to be exact. You can press the help key in the complex selection dialog for more info.
    I know it's a silly and very basic question, but other language that I used, only the SQL has the "IN" operator, but I think they work in different ways, so I would like to understand how it works in ABAP.
    Not silly ;-). Yes they work differently.
    More info here:
    - http://help.sap.com/saphelp_nw70/helpdata/en/9f/dba74635c111d1829f0000e829fbfe/frameset.htm
    - http://help.sap.com/saphelp_nw70/helpdata/en/9f/dba71f35c111d1829f0000e829fbfe/frameset.htm
    BR
    Sandra

  • Question about Percent Function

    This kinda goes along with my question about the plus sign. That was answered by the fact it means there is more than can be displayed in the field with the plus sign. The problem I am having is all of the fields with the plus sign are formated to be PERCENT. These fields are filled in via the C# program. The values are calculated in the C# program and outputed to the PDF form in the form of 00.00 - 100.00. Thus if I am filling in these fields with values that are within a PERCENT range, then why are they showing a plus sign. I have even go as far as to wipe the field clean, re-do the Text box, re-format as PERCENT, with the text centered, and the No Calculation radio button set true. The only other thing I do these fields is set the FONT to 10 point or otherwise the huge in size.

    Thank you all for the help on this. What I found is:
    it is correct that the incoming value to a fillable field for a PERCENT must be between 0 and 1 BUT this is NOT the complete answer.
    If I filled the field with 33.33 then it will display  33.33 + which says the display is too big.
    If I filled the field with .3333 thin it will display .3333 without the PLUS sign, but is still not correct because the FORMAT is set to PERCENT.
    What I had to do is add the following JAVA script.
    // Custom Calculate script for text field
    (function () {
        // Get the field values
        var v1 = getField("NO_FEAR_ASSOC_WITH_TARGETED_DISABILITY_PERCENT_1").value;
        // Set this field value
        event.value = v1;
    Now if the input is .3333 the display is now 33.33% which is correct. Sense the JAVA Script is basicly a NOP, this tells me that the PERCENT format requires some kind of trigger. Sense a FILL is NOT a trigger, the display comes out incorrect.

  • Question about IDashedAttributeValues interface

    Hi to everyone,<br />I have a question about IDashedAttributeValues interface.<br />If I would like to apply custom dashes kDashedAttributeValuesBoss to a page item. I would expect that my code will look like this:<br /><br />InterfacePtr<IDashedAttributeValues> pAttribute(::CreateObject(kDashedAttributeValuesBoss));<br /><br />pAttribute->SetPhase( nPhase );<br />pAttribute->SetCornerAdjustment((IDashedAttributeValues::CornerAdjustment)nCornerAdjust ment);<br />pAttribute->SetValue( 0, nDash0 );<br /><br />But InDesign crashes at SetValue code. I could understand InDesign. It is out of range. But, how to specify the length of value array or to add value into array?<br /><br />Thanks in advance,<br />Alexander Staroverov<br />Developer Engineer<br />Comosoft GmbH

    Thank you to all, I have found the answer in SDK samples:<br /><br />void SnpGraphicHelper::AddDashedValues(const K2Vector<PMReal>& dashAndGapValues)<br />{<br />IDataBase* db = fItemList.GetDataBase();<br />InterfacePtr<IDocument> theDocument(db, db->GetRootUID(), UseDefaultIID());<br />     InterfacePtr<IUIDData> uidData(::CreateObject2<IUIDData>(kDashedAttributeValuesBoss));<br />     ASSERT(uidData != nil);<br />     uidData->Set(::GetUIDRef(theDocument));<br />     InterfacePtr<IDashedAttributeValues> dashedAttributeValues(uidData, UseDefaultIID());<br />     if (dashedAttributeValues != nil && dashAndGapValues.size() > 0) {<br />          for (int32 i = 0; i < dashAndGapValues.size(); i++) {<br />               dashedAttributeValues->SetValue(i, dashAndGapValues[i]);<br />          }<br />          this->AddAnAttribute(dashedAttributeValues);<br />     }<br />}

  • Question about battery maintenance and longevity

    I have a question about the efficacy of the built-in battery maintenance of the Lenovo Power Manager utility; specifically how it pertains to my W520, if that makes any difference.
    With my previous laptop (an HP), any time I knew it would be parked on my desk for a week or longer, I would manually discharge the battery to about 40% and remove it to run the machine on AC power only.  This proved to be an excellent practice that enabled the battery to work like new for three solid years.  As soon as I stopped bothering with that, the battery life started dropping like a stone.
    Lenovo's power manager offers the option to maintain the battery automatically or manually override it to maintain a charge within specific range.  But I am wondering: how well this will work in the long run as compared to handling it manually?  And how do the two options (automatic and manual range) compare with eachother in terms of maintaining long term?
    I currently use the manual setting and keep it between 40% and 45%.

    I would put into manual, you have more control. Automatic follows a preset rule, which may not apply in every case or battery model.
    Regards,
    Jin Li
    May this year, be the year of 'DO'!
    I am a volunteer, and not a paid staff of Lenovo or Microsoft

  • Questions about a MasterQuize program

    Hi, everyone.
    I got a in-class case study program like this in the class:
    * This class stores/represents a question that has one of two
    * answers: True or False.
    * <p></p>
    * It needs to track the following information:
    * <ul>
    * <li>Question text</li>
    * <li>Correct answer</li>
    * <li>The user's answer to the question</li>
    * <li>Points value</li>
    * <li>Category</li>
    * <li>Difficulty rating</li>
    * </ul>
    // Our question should allow us to do the following:
    // - Create question (constructor) -- may be overloaded
    // - Print (display) question
    // - Check client's answer for correctness
    // - Get points value for question (0 or max)
    //   - Add "No-BS" grading option
    // - Getting client's answer
    // - Check to see if answered by client
    public class TrueFalseQuestion
        // Class constants (to simplify changes to common values)
        public static final int MIN_DIFFICULTY_LEVEL = 1;
        public static final int MAX_DIFFICULTY_LEVEL = 5;
        public static final int DEFAULT_DIFFICULTY_LEVEL = 1;
        public static final int DEFAULT_POINT_VALUE = 1;
        public static final String DEFAULT_CATEGORY_VALUE = "none";
        // Class instance variables
        private String questionText;
        private String correctAnswer;
        private String userAnswer;
        private int pointsValue;
        private String category;
        private int difficultyLevel; // TODO: Set a range for difficulty levels
         * @param text The literal wording of this question
         * @param answer The correct answer for this question
         * @param pts The total points available for this question
         * @param ctgry Category keyword for this question
         * @param level The perceived/intended difficulty level of this question
         * <p></p>
         * Defines a TrueFalseQuestion object.
        public TrueFalseQuestion (String text, String answer, int pts, String ctgry, int level)
            // Set starting values for all instance variables
            questionText = text.trim();
            correctAnswer = answer.trim();
            userAnswer = null; // No user answer supplied yet
            if (pts >= 1) // We assume that every problem is worth at least 1 point
                pointsValue = pts;
            else
                pointsValue = DEFAULT_POINT_VALUE;
            category = ctgry.trim();
            if (level >= MIN_DIFFICULTY_LEVEL && level <= MAX_DIFFICULTY_LEVEL) // within range
                difficultyLevel = level;
            else
                difficultyLevel = DEFAULT_DIFFICULTY_LEVEL;
        // Simplified (overloaded) constructors
         * @param text The literal wording of this question
         * @param answer The correct answer for this question
         * @param pts The total points available for this question
         * <p></p>
         * Defines a TrueFalseQuestion with default values for category and difficulty level.
        public TrueFalseQuestion (String text, String answer, int pts)
            // Call pre-existing constructor with default category and difficulty
            this(text, answer, pts, DEFAULT_CATEGORY_VALUE, DEFAULT_DIFFICULTY_LEVEL);
         * @param text The literal wording of this question
         * @param answer The correct answer for this question
         * <p></p>
         * Defines a TrueFalseQuestion with the default point value, default category,
         * and default difficulty level.
        public TrueFalseQuestion (String text, String answer)
            // Call pre-existing constructor with default points, category and difficulty
            this(text, answer, DEFAULT_POINT_VALUE, DEFAULT_CATEGORY_VALUE,
                 DEFAULT_DIFFICULTY_LEVEL);
         * @param text The literal wording of this question
         * @param answer The correct answer for this question
         * @param pts The total points available for this question
         * @param ctgry Category keyword for this question
         * <p></p>
         * Defines a TrueFalseQuestion with the default difficulty level.
        public TrueFalseQuestion (String text, String answer, int pts, String ctgry)
            // Call pre-existing constructor with default points, category and difficulty
            this(text, answer, pts, ctgry,
                 DEFAULT_DIFFICULTY_LEVEL);
         * @param text The literal wording of this question
         * @param answer The correct answer for this question
         * @param ctgry Category keyword for this question
         * <p></p>
         * Defines a TrueFalseQuestion with the default point value and the default
         * difficulty level.
        public TrueFalseQuestion (String text, String answer, String ctgry)
            // Use default points and difficulty
            this(text, answer, DEFAULT_POINT_VALUE, ctgry, DEFAULT_DIFFICULTY_LEVEL);
         * @param text The literal wording of this question
         * @param answer The correct answer for this question
         * @param pts The total points available for this question
         * @param level The perceived/intended difficulty level of this question
         * <p></p>
         * Defines a TrueFalseQuestion with the default value for the question category.
        public TrueFalseQuestion (String text, String answer, int pts, int level)
            // Use default category
            this(text, answer, pts, DEFAULT_CATEGORY_VALUE, level);
        // Clients can invoke this method to retrieve the text of the current question.
        // We chose to return the text instead of printing it; this allows the client
        // to decide how it should be presented (via a GUI, over a network, etc.)
        public String getQuestion ()
            return questionText;
        // This method allows the client to store the user's answer inside the
        // TrueFalseQuestion object for easy comparison
        public void submitAnswer (String ans)
            userAnswer = ans;
        // This method reports whether the submitted answer matches the correct answer
        public boolean answerIsCorrect(String userAns) // This version does all the work
            if (userAns == null) // No response from user (yet)
                return false;
            else
                // Normalize and compare answers
                char key = normalize(correctAnswer); // Get 't' or 'f'
                char ans = normalize(userAns); // Get 't' or 'f'
                return (key == ans);
        public boolean answerIsCorrect ()
            return answerIsCorrect(userAnswer); // Call previously-defined version
        public int getPointsValue()
            return pointsValue;
        // Return the points awarded for the user's answer. This method does
        // NOT support partial credit; answers are either correct or incorrect.
        // If the "No-BS" option is selected, blank (unanswered) questions receive
        // 1 point automatically; otherwise, the score will be either 0 or the
        // question's normal points value.
        public int getPointsEarned(boolean useNoBSRule)
    System.out.println("useNoBS: " + useNoBSRule + "\tuserAnswer: " + userAnswer + "\tcorrectAnswer: " + correctAnswer);
            if (useNoBSRule && (userAnswer == null))
                return 1;
            else if (userAnswer == null)
                return 0; // Without "No-BS", treat blank problems as incorrect
            if (answerIsCorrect() == false)
                return 0;
            else
                return pointsValue;
        // This method returns true if the user has submitted an answer
        // for this question (regardless of whether that answer is correct)
        public boolean hasBeenAnswered ()
            return (userAnswer != null);
        // Private helper method to convert all answers to single lowercase
        // letters (in this case, 't' for TRUE and 'f' for FALSE)
        private char normalize (String input)
             if (input != null)
                  input = input.trim(); // Remove leading whitespace
                  input = input.toLowerCase();
                  return input.charAt(0);
             else
                  return ' ';
    import java.util.*;
    * This class represents a complete test or quiz.
    * Data stored:
    * - List of questions
    * - Total score earned
    * - Total score possible
    * - Name/title of test
    * - Instructions
    *  - Category/class assignment
    *  - Student (test-taker) name
    *  - Date test is/was taken
    *  - Time started
    *  - Time completed
    *  - Maximum time allotted
    *  - (List of) Maximum attempts per question
    *  - List of attempts per question
    *  - List of difficulty ratings per question
    *  - Assignment weight
    * Methods:
    * - Constructor
    * - Add question
    * - Display question
    * - Display test
    * - Display instructions
    *      - Generate random exam
    * - Take/administer test
    * - Get score
    * STUFF TO DO:
    * - Add time/date restrictions
    * - Add network access restrictions
    * - Add other restrictions/allowances?
    * @author (your name)
    * @version (a version number or a date)
    public class Test
        // Class constant
        public static final int MAX_NUMBER_OF_QUESTIONS = 10;
        // Class instance variables
        private String testName;
        private int scoreEarned; // What the student earned on the exam
        private int scorePossible; // Total point values of all questions
        private String instructions; // Exam header text
        private ArrayList<TrueFalseQuestion> questions; // Create inside constructor
        // Methods
        public Test (String name, String instr)
            testName = name;
            scoreEarned = 0;
            scorePossible = 0;
            instructions = instr;
            questions = new ArrayList<TrueFalseQuestion>(); //[MAX_NUMBER_OF_QUESTIONS];
        public String getInstructions()
            return instructions;
        public int getScore()
            return scoreEarned;
        public void addQuestion (TrueFalseQuestion q)
            scorePossible += q.getPointsValue();
            questions.add(q); // Automatically append question to end of test
        public String displayQuestion (int position)
            if (position < questions.size())
                return (position+1) + ". " + questions.get(position).getQuestion();
            else
                return null;
        public String displayTest ()
            String result = "";
            for (int i = 0; i < questions.size(); i++)
                result += (i+1) + ". (";
                TrueFalseQuestion t = questions.get(i);
                result += t.getPointsValue();
                result += " points)\n\n" + displayQuestion(i);
                result += "\n\n";
            return result;
        // Get test length (number of questions)
        public int length ()
             return questions.size();
        // Submit answer to a specific question
        public boolean answer(int number, String a)
             // Question numbers run from 0-(max-1) -- THIS WAS AN OFF-BY-ONE ERROR AT FIRST
             if (number >= 0 && number < questions.size())
                  TrueFalseQuestion t = questions.get(number);
                  t.submitAnswer(a);
                  return true; // Question was answered
             else
                  return false; // Unable to answer (nonexistent) question
        // Score exam
        public void scoreExam (boolean useNoBS)
             scoreEarned = 0;
             for (int i = 0; i < questions.size(); i++) // For each question in exam
                  TrueFalseQuestion t = questions.get(i); // get current question
                  scoreEarned += t.getPointsEarned(useNoBS);
    }// Test harness for the Test and *Question classes
    import java.util.*;
    public class QuizDriver
         public static void main(String[] args)
              // Create a new Test object
              Test exam = new Test("Sample Exam", "Select the correct answer for each question");
              setUp(exam);
              Scanner sc = new Scanner(System.in);
              System.out.println(exam.getInstructions());
              // Administer exam
              for (int i = 0; i < exam.length(); i++)
                   // Print out current question
                   System.out.println(exam.displayQuestion(i));
                   // Get user answer
                   System.out.print("Your answer: ");
                   String ans = sc.nextLine();
                   if (ans.equals("")) // Handle blank responses for unanswered questions
                        ans = null;
                   exam.answer(i, ans);
              // Get exam results
              exam.scoreExam(true);
              System.out.println("Your final score was " + exam.getScore() + " points.");
         private static void setUp (Test t)
              TrueFalseQuestion x = new TrueFalseQuestion("The sky is blue.", "true", 2);
              t.addQuestion(x);
              x = new TrueFalseQuestion("The first FORTRAN compiler debuted in 1957", "true", 5);
              t.addQuestion(x);
              x = new TrueFalseQuestion("Spock was a Vulcan", "false", 3);
              t.addQuestion(x);
    }This program is far from finishing.
    I have many questions about this program, but let me ask this one first:
    In the TrueFalseQeustion class, why are there so many constructors? What is the purpose of setting some of the variables to default values?
    Thank you very much!!!
    Edited by: Terry001 on Apr 16, 2008 10:02 AM

    newark wrote:
    Stop ignoring the error messages. You seem to think that an error message means you're doing the assignment wrong. It's probably a simple fix. Post the exact error messages, as well as the code that corresponds to them. The error message will tell you exactly what line the problem occurs on, so you know right where to look.Hi,
    After some modifications, the program now gives me the result the assignment wants when I run it. But I still have trouble with the MultipleChoiceQuestion class
    Here is the complete program
    QuizDriver class
    // Test harness for the Test and *Question classes
    import java.util.*;
    public class QuizDriver
         public static void main(String[] args)
              // Create a new Test object
              Test exam = new Test("Sample Exam", "Select the correct answer for each question");
              setUp(exam);
              Scanner sc = new Scanner(System.in);
              System.out.println(exam.getInstructions());
              // Administer exam
              for (int i = 0; i < exam.length(); i++)
                   // Print out current question
                   System.out.println(exam.displayQuestion(i));
                   // Get user answer
                   System.out.print("Your answer: ");
                   String ans = sc.nextLine();
                   if (ans.equals("")) // Handle blank responses for unanswered questions
                        ans = null;
                   exam.answer(i, ans);
              // Get exam results
              exam.scoreExam(true);
              System.out.println("Your final score was " + exam.getScore() + " points.");
         private static void setUp (Test t)
                                   Question x;
              x = new TrueFalseQuestion("The sky is blue.", "true", 2);
              t.addQuestion(x);
              x = new TrueFalseQuestion("The first FORTRAN compiler debuted in 1957", "true", 5);
              t.addQuestion(x);
              x = new TrueFalseQuestion("Spock was a Vulcan", "false", 3);
              t.addQuestion(x);
              x = new MultipleChoiceQuestion("What is the color of the car\na.Red\nb.Green", "a. Red", 3);
              t.addQuestion(x);
              x = new MultipleChoiceQuestion("What is the name of this class\na.CSE110\nb.CSE114", "b, CSE114", 3);
              t.addQuestion(x);
    }Test
    public class Test
        // Class constant
        public static final int MAX_NUMBER_OF_QUESTIONS = 10;
        // Class instance variables
        private String testName;
        private int scoreEarned; // What the student earned on the exam
        private int scorePossible; // Total point values of all questions
        private String instructions; // Exam header text
        private ArrayList<Question> questions; // Create inside constructor
        // Methods
        public Test (String name, String instr)
            testName = name;
            scoreEarned = 0;
            scorePossible = 0;
            instructions = instr;
            questions = new ArrayList<Question>(); //[MAX_NUMBER_OF_QUESTIONS];
        public String getInstructions()
            return instructions;
        public int getScore()
            return scoreEarned;
        public void addQuestion (Question q)
            scorePossible += q.getPointsValue();
            questions.add(q); // Automatically append question to end of test
        public String displayQuestion (int position)
            if (position < questions.size())
                return (position+1) + ". " + questions.get(position).getQuestion();
            else
                return null;
        public String displayTest ()
            String result = "";
            for (int i = 0; i < questions.size(); i++)
                result += (i+1) + ". (";
                Question t = questions.get(i);
                result += t.getPointsValue();
                result += " points)\n\n" + displayQuestion(i);
                result += "\n\n";
            return result;
        // Get test length (number of questions)
        public int length ()
             return questions.size();
        // Submit answer to a specific question
        public boolean answer(int number, String a)
             // Question numbers run from 0-(max-1) -- THIS WAS AN OFF-BY-ONE ERROR AT FIRST
             if (number >= 0 && number < questions.size())
                  Question t = questions.get(number);
                  t.submitAnswer(a);
                  return true; // Question was answered
             else
                  return false; // Unable to answer (nonexistent) question
        // Score exam
        public void scoreExam (boolean useNoBS)
             scoreEarned = 0;
             for (int i = 0; i < questions.size(); i++) // For each question in exam
                  Question t = questions.get(i); // get current question
                  scoreEarned += t.getPointsEarned(useNoBS);
    }Question
    public class Question
    // Class constants
      public static final int MIN_DIFFICULTY_LEVEL = 1;
      public static final int MAX_DIFFICULTY_LEVEL = 5;
      public static final int DEFAULT_DIFFICULTY_LEVEL = 1;
      public static final int DEFAULT_POINT_VALUE = 1;
      public static final String DEFAULT_CATEGORY_VALUE = "none";
      // Class instance variables
      protected String questionText;
      protected String correctAnswer;
      protected String userAnswer;
      protected int pointsValue;
      protected String category;
      protected int difficultyLevel; //TODO: set a range for difficulty levels
      // Constructors
      public Question (String text, String answer, int pts, String ctgry, int level)
          questionText = text.trim();
          correctAnswer = answer.trim();
          userAnswer = null;
          if (pts >= 1)
              pointsValue = pts;
            else
                pointsValue = DEFAULT_POINT_VALUE;
            category = ctgry.trim();
            if (level >= MIN_DIFFICULTY_LEVEL && level <= MAX_DIFFICULTY_LEVEL)
                difficultyLevel = level;
            else
                difficultyLevel = DEFAULT_DIFFICULTY_LEVEL;
        // Overloaded (simplied) constructors
        public Question (String text, String answer, int pts)
            this(text, answer, pts, DEFAULT_CATEGORY_VALUE, DEFAULT_DIFFICULTY_LEVEL);
        public Question (String text, String answer, int pts, String ctgry)
            this(text, answer, pts, ctgry, DEFAULT_DIFFICULTY_LEVEL);
        public Question (String text, String answer, String ctgry)
            this(text, answer, DEFAULT_POINT_VALUE, ctgry, DEFAULT_DIFFICULTY_LEVEL);
        public Question (String text, String answer, int pts, int level)
            this(text, answer, pts, DEFAULT_CATEGORY_VALUE, level);
        // Methods
        public String getQuestion ()
            return questionText;
        // Use this method to store user answers
        public void submitAnswer (String ans)
            userAnswer = ans;
        public boolean answerIsCorrect (String userAns)
            if (userAns == null)
                return false;
            else
                // Normalize and compare answers
                char key = normalize (correctAnswer); //Get the first letter of an answer
                char ans = normalize (userAns); //Get the first letter of an answer
                return (key == ans);
        public boolean answerIsCorrect ()// Why do we need two answerisCorrect() methods?
            return answerIsCorrect (userAnswer);
        public int getPointsValue ()
            return pointsValue;
        public int getPointsEarned (boolean userNoBSRule)
            System.out.println ("useNoBS: " + userNoBSRule + "\tuseAnswer: " + userAnswer + "\tcorrectAnswer: " + correctAnswer);
            if (userNoBSRule && (userAnswer == null))
                return 1;
            else if (userAnswer == null)
                return 0;
            if (answerIsCorrect() == false)
                return 0;
            else
                return pointsValue;
        public String getCorrectAnswer ()
            return correctAnswer;
        public boolean hasBeenAnswered ()
            return (userAnswer != null);
        private char normalize (String input)
            if (input != null)
                input = input.trim();
                input = input.toLowerCase();
                return input.charAt(0);
            else
                return ' ';
           TrueFalseQuestion
    public class TrueFalseQuestion extends Question
      public TrueFalseQuestion (String text, String answer, int pts, String ctgry, int level)
          super(text, answer, pts, ctgry, level);
        public TrueFalseQuestion (String text, String answer, int pts)
            super(text, answer, pts, DEFAULT_CATEGORY_VALUE, DEFAULT_DIFFICULTY_LEVEL);
        public TrueFalseQuestion (String text, String answer, int pts, String ctgry)
            super(text, answer, pts, ctgry, DEFAULT_DIFFICULTY_LEVEL);
        public TrueFalseQuestion (String text, String answer, String ctgry)
            super(text, answer, DEFAULT_POINT_VALUE, ctgry, DEFAULT_DIFFICULTY_LEVEL);
        public TrueFalseQuestion (String text, String answer, int pts, int level)
            super(text, answer, pts, DEFAULT_CATEGORY_VALUE, level);
        // Methods
        public String[] getPossibleAnswerChoice ()
            String[] possibleAnswerChoice = {"true", "false"};
            return possibleAnswerChoice;
    } MultipleChoiceQuestion
    public class MultipleChoiceQuestion extends Question
       public MultipleChoiceQuestion (String text, String answer, int pts, String ctgry, int level)
           super(text, answer, pts, ctgry, level);
        public MultipleChoiceQuestion (String text, String answer, int pts)
            super(text, answer, pts, DEFAULT_CATEGORY_VALUE, DEFAULT_DIFFICULTY_LEVEL);
        public MultipleChoiceQuestion (String text, String answer, int pts, String ctgry)
            super(text, answer, pts, ctgry, DEFAULT_DIFFICULTY_LEVEL);
        public MultipleChoiceQuestion (String text, String answer, String ctgry)
            super(text, answer, DEFAULT_POINT_VALUE, ctgry, DEFAULT_DIFFICULTY_LEVEL);
        public MultipleChoiceQuestion (String text, String answer, int pts, int level)
            super(text, answer, pts, DEFAULT_CATEGORY_VALUE, level);
        // Methods
        String possibleAnswers;
        public String getPossibleAnswers ()
            return possibleAnswers;
        public void addAnswerChoice (String answerChoice)
            String ansChoice = answerChoice;
            questionText += "\nansChoice";
            possibleAnswers = answerChoice;
        public void printAnswerChoice ()
            System.out.println (questionText);
    } I don't understand why the assignment wants me to build a method in the MultpleChoiceQuestion class to store the potential answer choices, I can make the program display the potential answer choices by including them in the questionText as following in the QuizDriver class
    Question x;
    x = new MultipleChoiceQuestion("What is the color of the car\na.Red\nb.Green", "a. Red", 3);
    t.addQuestion(x); I don't know how to allow the client to construct the list of answer choices one at a time(add one potential answer choice by calling the addAsnwerChoices() method once)
    Here are a few original sentences of my assignment which describe what I should do with the MultipleChoiceQuestion class
    Using TrueFalseQuestion as a model, develop a new MultipleChoiceQuestion class that can be used to represent a problem where the user must select one of several answer choices (e.g., "Select answer (a), (b), (c), or (d)."). This new question type should have all of the same externally-visible functionality as TrueFalseQuestion, except that it must:
    maintain a list of potential answer choices
    provide a method that allows the client to construct the list of answer choices one at a time (i.e., the client should be able to call an addAnswerChoice() method to pass a new answer option to the MultipleChoiceQuestion.)
    display (as part of the question text) the list of answer choices with appropriate letters ("abcd" instead of "0123") I don't understand what these sentences mean.
    1. "Maintain a list of potential answer choices"-- this reminds me of the getPossibleAnswerChoice() method in the TrueFalseQuestion class
    public String[] getPossibleAnswerChoice ()
            String[] possibleAnswerChoice = {"true", "false"};
            return possibleAnswerChoice;
        }I wonder that if the potential answer choices I have to store in the MultipleChoiceQuestion class are only letters "a", "b", "c", "d", etc, or include the answer text coming after the letters(eg. a.Red, b.Green)
    2. "provide a method that allows the client to construct the list of answer choices one at a time". How do I achieve the functionality "one at a time"? Do I need to pass the input of the client (a potential answer choice) to the variable of the method which stores the list of potential answers?
    3. "display (as part of the question text) the list of answer choices with appropriate letters". My question here is that: When the client type in one possible answer, should I append it to the variable questionText? (So I use the questionText variable in the methods of the first and second steps)
    Thank you very much for your nice help!
    Edited by: Terry001 on Apr 21, 2008 8:01 AM

  • Question about the partition index

    Hi, all, I have some questions about partitioned index.
    And I get from oracle documents that oracle's partition index can be clarified as local partition index and global partition index.
    And local partition index can be clarified as prefix local partition index and non-prefix local partition index. And I also the word "global prefix partition index".
    But, I can not get what the exact meaning after I consulted many documents and notes from website.
    Can anyone give me one example to cover these topic?
    You help is very thankful!
    Thanks and best regards!

    Hi,
    Local index search by partition.
    Local Indexes: A local index is an index on a partitioned table which is partitioned in the exact same manner as the underlying partitioned table. Each partition of a local index corresponds to one and only one partition of the underlying table.
    Global Partitioned Indexes: A global partitioned index is an index on a partitioned or non-partitioned table which is partitioned using a different partitioning-key from the table. Global-partitioned indexes can only be partitioned using range partitioning. For example, a table could be range-partitioned by month and have twelve partitions, while an index on that table could be range-partitioned using a different partitioning key and have a different number of partitions.
    Global Non-Partitioned Indexes: A global non-partitioned index is essentially identical to an index on a non-partitioned table. The index structure is not partitioned.
    Maybe this links help you:
    http://www.oracle.com/technology/products/oracle9i/datasheets/partitioning.html
    http://asktom.oracle.com/pls/ask/f?p=4950:8:12026637104196321871::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:678824574412
    http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:1612281449571
    Cheers

  • Question about printing by page count

    Hi
    I'm new to this and I have a question about printing our invoices by page count.
    We generate our invoice using Crystal 2008 we have invoices that can range from a single page to as many as 6 pages. I would like Crystal to preview/print the reports in order of how many pages are in the report. Example: print all single page invoices first then all invoices that are 2 pages and so on. Is this possible?
    Thank you in advance

    Hi Ido,
    Thanks for your input. This is more or less what Carl was suggesting yesterday and I gave it a lot of thinking. The problem here is that I cannot go with "good enough resolution" - I need perfect resolution.
    The reason for this apparently silly requirement (why would one sort a bunch of invoices by number of pages instead of Customer Number, as long as they end up in an envelope anyway?) is the proposed purchase of a folding/stuffing machine which could do very fast what now takes one person 4 days to achieve.
    One type of machine comes with three settings - fold/stuff 1, 2 or 3-page statements. You need to have three stacks with all the statements that have 1, 2 and 3 pages. The ones with more pages will have to be folded manually, but there are only about two dozen clients that give us that much business. You feed the machine one stack at a time and set it to process the respective number of pages. Any statement that falls accidentally in the other stack will either cause the whole rest of the stack to be mixed up, which is very bad, or cause one customer to receive his invoice and someone else's, which is just embarrassing. I cannot afford any of these scenarios.
    Given that the statement contains variable-length (and depth) messages that vary by month and by profit center, and it could also contain one or more groups of details, each with its own header, it is very risky to try to come up with magic numbers attempting to estimate the number of pages based on the number of detail lines. Someone will still have to eyeball very carefully the initial stack of statements in the areas where the number of pages increases by one and make sure that ordering by number of detail lines did not mix, for example, one report with two pages among two reports with one page. Of course, this increased scrutiny will be necessary only around the areas where the page number transitions from 1->2, 2->3 and 3->4, which is much better than trying to order by number of pages all 1500 statements, but still depends on one's manual intervention and focus and, as a result, makes me pretty uncomfortable.
    I have taken a look at the "Group Sort Expert". If you select the "All" option (all groups) and you had some kind of summary value then you could sort the report by that value. The idea was to create a hidden Average field over the TotalPageCount runtime variable (which will always equal the TotalPageCount for that customer, since it's the same for all the pages in that group) and use that summary field in the "Group Sort Expert", which would have solved the problem elegantly. Unfortunately, there is no way to create a summary field over a runtime variable. I even created a formula that just returns the TotalPageCount, but that formula did not show up in the list of fields available for summarization (while other formulas did).
    It looks like the reporting engine does not allow this type of "late-sorting". I wonder if it is possible at all, because in effect this would require the engine to execute an additional pass: first it should somehow generate the whole report grouped by Customer Number so it knows how many pages are in each group, then it should sort by the number of pages and only after that it could render the report. I'm not sure the engine can do this additional pass.
    I would be very curious to hear about the other (more complex) ideas you mentioned. For example, I have seen (in Crystal 2008) a checkbox allowing "sorting by a formula". I don't know how to write a formula used in sorting, but the basic question in the paragraph above still stands: does the engine even support such a feature?
    Thanks again.

  • A question about Xapp524 written by Marc Defossez

    Hi Marc Defossez,
    I have a question about Xapp524. Pls check the figure below. I find the frame pattern should be "00001111". But in the source code AdcFrame.vhd, I find the frame pattern is IntPatternA, IntPatternB, IntPatternC or IntPatternD which donot include "00001111". I cannot understand why. Could you explain it to more detail?
    Thanks
     Rgds
    Orange

    Hi, Thanks for your reply. I don't know what version  it  is. But in the xapp524 “readme.txt” is found
    1. REVISION HISTORY
    Readme
    Date                      Version                            Revision Description
    =========================================================================
    19/08/2012              1.0                                Initial Xilinx release.
    =========================================================================
    So i guess the version may be 1.0.
    The code makes me confused is in the AdcFrame.vhd.   
    -- A std_logic_vector is converted to a string.
    function stdlvec_to_str(inp: std_logic_vector) return string is
    variable temp: string(inp'left+1 downto 1) := (others => 'X');
    begin
        for i in inp'reverse_range loop
            if (inp(i) = '1') then
                temp(i+1) := '1';
            elsif (inp(i) = '0') then
                temp(i+1) := '0';
            end if;
       end loop;
    return temp;
    end function stdlvec_to_str;
    -- A string is converted to a std_logic_vector.
    function str_to_stdlvec(Inp: string) return std_logic_vector is
    variable Temp : std_logic_vector(Inp'range) := (others => 'X');
    begin
        for i in Inp'range loop
            if (Inp(i) = '1') then
               Temp(i) := '1';
            elsif (Inp(i) = '0') then
                Temp(i) := '0';
            end if;
       end loop;
    return Temp;
    end function str_to_stdlvec;
    -- In two wire mode a 12 bit ADC has 2 channels of 6 bits. The AdcBits stay at 12.
    -- In two wire mode a 14 bit ADC has 2 channels of 8 bits. The AdcBits is set at 16.
    -- In two wire mode a 16 bit ADC has 2 channels of 8 bits. The AdcBits stay at 16.
    function FrmBits (Bits : integer) return integer is
    variable Temp : integer;
    begin
    if (Bits = 12) then
    Temp := 12;
    elsif (Bits = 14) then
    Temp := 16;
    elsif (Bits = 16) then
    Temp := 16;
    end if;
    return Temp;
    end function FrmBits;
    -- Word symmetry check
    -- A word (16-bit) is checked for bit pair symmetry
    -- Example: In one byte there are 16 possible symmetry positions.
    -- 00000000, 00000011, 00001100, 00001111,
    -- 00110000, 00110011, 00111100, 00111111,
    -- 11000000, 11000011, 11001100, 11001111,
    -- 11110000, 11110011, 11111100, 11111111,
    -- Bit_7=Bit_6, Bit_5=Bit_4, Bit_3=Bit_2, and Bit_1=Bit_0
    function SymChck (Inp: std_logic_vector) return std_logic is
    variable Temp : std_logic_vector ((Inp'left-1)/2 downto 0) := (others => '0');
    variable Sym : std_logic := '0';
    begin
    for n in (Inp'left-1)/2 downto 0 loop
    Temp(n) := Inp((n*2)+1) xor Inp(n*2);
    Sym := Temp(n) or Sym;
    end loop;
    assert false
    report CR & " Pattern XORed/ORed = " & stdlvec_to_str(Temp) & CR
    severity note;
    return Sym;
    end function SymChck;
    -- When a symmetric byte, bit pattern is found, make the requested pattern rotate
    -- by one bit to become a non-symmetric pattern.
    function BitShft(Inp: std_logic_vector; Wire: integer) return std_logic_vector is
    variable Temp : std_logic_vector (Inp'range):= (others => '0');
    begin
    -- Bit shift all bits.
    -- Example: 16-bit frame word = 11111111_00000000 or 00000000_11110000
    -- After shifting the word returned looks as: 11111110_00000001 and 00000000_01111000
    if (SymChck(Inp) = '0') then
    if (Wire = 1 ) then -- 1-wire, shift 15-bits
    for n in Inp'left downto 0 loop
    if (n /= 0) then
    Temp(n) := Inp(n-1);
    elsif (n = 0) then
    Temp(Temp'right) := Inp(Inp'left);
    end if;
    end loop;
    else -- (Wire = 2) -- 2-wire, shift 8-bits
    for n in (Inp'left-8) downto 0 loop
    if (n /= 0) then
    Temp(n) := Inp(n-1);
    elsif (n = 0) then
    Temp(Temp'right) := Inp(Inp'left-8);
    end if;
    end loop;
    end if;
    elsif (SymChck(Inp) = '1') then
    -- Don't do anything, return the word as it came in.
    Temp := Inp;
    end if;
    assert false
    report CR &
    " Pattern Shifted = " & stdlvec_to_str(Temp) & CR &
    " Comparator Value A = " & stdlvec_to_str(Temp(15 downto 8)) & CR &
    " Comparator Value B = " & stdlvec_to_str(Temp(7 downto 0)) & CR
    severity note;
    return Temp;
    end function BitShft;
    -- Bit swap operation:
    -- Bit n of the output string gets bit n-1 of the input. ex: out(7) <= In(6).
    -- Bit n-1 of the output string gets bit n of the input. ex: out(6) <= In(7).
    -- Bit n-2 of the output string gets bit n-3 of the input. ex: out(5) <= In(4).
    -- Bit n-3 of the output string gets bit n-2 of the input. ex: out(4) <= In(5).
    -- and etcetera....
    -- This: Bit_7, Bit_6, Bit_5, Bit_4, Bit_3, Bit_2, Bit_1, Bit_0.
    -- Results in: Bit_6, Bit_7, Bit-$, Bit_5, Bit_2, Bit_3, Bit_0, Bit_1.
    function BitSwap(Inp: std_logic_vector) return std_logic_vector is
    variable Temp : std_logic_vector (Inp'range);
    begin
    for n in (Inp'left-1)/2 downto 0 loop
    Temp((n*2)+1) := Inp(n*2);
    Temp(n*2) := Inp((n*2)+1);
    end loop;
    assert false
    report CR &
    " Pattern Bit Swapped = " & stdlvec_to_str(Temp) & CR &
    " Comparator Value C = " & stdlvec_to_str(Temp(15 downto 8)) & CR &
    " Comparator Value D = " & stdlvec_to_str(Temp(7 downto 0)) & CR
    severity note;
    return Temp;
    end function BitSwap;
    function TermOrNot (Term : integer) return boolean is
    begin
    if (Term = 0) then
    return FALSE;
    else
    return TRUE;
    end if;
    end TermOrNot;
    -- Constants
    -- Transform the pattern STRING into a std_logic_vector.
    constant IntPattern :
    std_logic_vector(FrmBits(C_AdcBits)-1 downto 0) := str_to_stdlvec(C_FrmPattern);
    -- Shift the pattern for one bit.
    constant IntPatternBitShifted :
    std_logic_vector(FrmBits(C_AdcBits)-1 downto 0) := BitShft(IntPattern, C_AdcWireInt);
    -- Bit swap the by one bit shifted pattern.
    constant IntPatternBitSwapped :
    std_logic_vector(FrmBits(C_AdcBits)-1 downto 0) := BitSwap(IntPatternBitShifted);
    -- Define the bytes for pattern comparison.
    constant IntPatternA : std_logic_vector((FrmBits(C_AdcBits)/2)-1 downto 0) :=
        IntPatternBitShifted(FrmBits(C_AdcBits)-1 downto FrmBits(C_AdcBits)/2);
    constant IntPatternB : std_logic_vector((FrmBits(C_AdcBits)/2)-1 downto 0) :=
        IntPatternBitShifted((FrmBits(C_AdcBits)/2)-1 downto 0);
    constant IntPatternC : std_logic_vector((FrmBits(C_AdcBits)/2)-1 downto 0) :=
        IntPatternBitSwapped(FrmBits(C_AdcBits)-1 downto FrmBits(C_AdcBits)/2);
    constant IntPatternD : std_logic_vector((FrmBits(C_AdcBits)/2)-1 downto 0) :=
        IntPatternBitSwapped((FrmBits(C_AdcBits)/2)-1 downto 0);
    The intPatternA, intPatternB, intPatternC and intPatternD are used as a trainning pattern for the frameclock. As I think, the training pattern should be C_FrmPattern(C_FrmPattern is "11110000"  when  adcbits  is 16 and the wire is 2). Why do you use intPatternA to intPatternD as the training pattern? 
     The AdcFrame.vhd is attached.
     

  • Questions about entering OCP

    I have a few questions about OCP:
    1) Why certified? Yes I read the answer in the FAQ in the forum, but it still doesn't convince me, what does it give to me? Does it qualify as an academic degree?
    2)Ok, I decided to try and do it, now what? How can I know if there is such a thing in my country? What about books, tests and courses?
    3)How many levels are there? I saw a few, from Professional to Master, what do those titles mean?
    4)Do the test cost a lot of money? Because I have financial issues and might not be able to come up with a large sum of money.
    Thanks in advance.

    982301 wrote:
    I have a few questions about OCP:
    1) Why certified? Yes I read the answer in the FAQ in the forum, but it still doesn't convince me, what does it give to me? Does it qualify as an academic degree?
    2)Ok, I decided to try and do it, now what? How can I know if there is such a thing in my country? What about books, tests and courses?
    3)How many levels are there? I saw a few, from Professional to Master, what do those titles mean?
    4)Do the test cost a lot of money? Because I have financial issues and might not be able to come up with a large sum of money.
    Thanks in advance.Matthew's covered pretty much everything. And no-ones focring you to do it.
    In general, (and there are exceptions) OCA is a pre-requisite to OCP on the same track. Often (but not always) you will need to get to OCP level rather than OCA to be properly recognised.
    OCM is a very high level and you dont really need to worry abut it initially.
    OCS is normally associated with the Oracle Partnership program(OPN), but its specialist certifications can sometimes be applicable to those outside of it.
    OCE is an expert in a particular area not directly associated with a track.
    'OCP' covers a wide range of certifications and its interesting to focus on the ones that apply to yourself. So a better question to ask is which certifications in particular apply to me, and ideally have some correlation with current experience and where you intend your career to go.
    Doing the certificaiton will give you a resource cost in terms of training and taking the exam. You should identify that cost prior to emarking on study.
    In general OCA level does not require mandatory training. Usually OCP level and sometimes OCE does require mandatory training course attendance and verification and you need to factor that into account.
    Of note is that PL/SQL OCP; MYSQLDBA OCP and Java SE OCP do not currently require mandatory training AFAIK; whereas DBA OCP (which often people think as the default OCP) does requre mandatory training. Unusually for OCP the DBA OCP training can sometimes be obtainined via the WDP program for significantly less cost ( I will not vouch for quality of all WDP providers). Got to http://certification.oracle.com and identify and cost.

Maybe you are looking for

  • File not found error after log on to ADF application

    Hi I just took over an ADF application, after clicking on log in button, in the application_log, there is always a login.jspx -- file not found error message, the directory is not even exist. somehow the application had 'registered ' an directory for

  • Alternative Threading Model in Solaris 8?

    I haven't been able to get to any Solaris 8 docs yet, but I've been hearing about his alternative threading model available in Solaris 8. Can someone explain it to me?

  • Problem with NotSerializableException on class implementing Serializable

    Hi, Any idea as to why I get this exception, and what I can do to avoid it ? java.io.NotSerializableException: util.NumberStore$UserI have this, relatively simple, class class User implements Serializable      private static long serialVersionUID = 1

  • D3L "produce" error: unable to find attribute object for top node

    Hi I'm new to this forum, hope someone can help me with this because it's really been causing a headache for a few days now. I'm trying to deliver a flat file message with an interconnect standard ftp adapter. All the transformations go well but then

  • A big problem with using endnotes in Pages 5

    Unlike Pages 09 which worked flawless with endnotes functionality, Pages 5 has a big problem with the feature that maybe been addressed. When I insert an endnote, I am prohibited from clicking the citation number at the end of the document which is s